首页 > 解决方案 > Laravel:将请求转换为另一个

问题描述

我想在我的用户注册后立即登录。这是我的用户控制器的代码(有效):

<?php

namespace App\Http\Controllers;

use App\Http\Requests\Login;
use App\Http\Requests\Register;
use App\User;

class UserController extends Controller
{
    public function register(Register $request)
    {
        User::create($request->all());

        $loginRequest             = new Login();
        $loginRequest['email']    = $request->get('email');
        $loginRequest['password'] = $request->get('password');

        return $this->login($loginRequest);
    }

    public function login(Login $request)
    {
        return 'ok';
    }
}

我觉得我的$loginRequest. 有没有更简洁的方法来做同样的事情?Aka 将我的注册请求转换为登录请求?

标签: laravellaravel-5request

解决方案


您只是在注册后尝试将用户登录到他的帐户,因此请使用Auth::login($user)

class UserController extends Controller
{
    public function register(Register $request)
    {
        $user =  User::create($request->all());

       \Auth::login($user);

    }

}

推荐阅读