我需要能够做一个post方法默认的“/注册”从一个窗体,即使当我已经通过身份验证。Laravel 5.2默认认证,如何注册时认证
目前它不可能,我没有得到任何错误,但我没有在我的数据库中得到记录。
我的表单和代码在im未登录时起作用 我需要在哪里进行更改才能使用? 我认为它的registersusers.php附近,但代码对我来说是全新的。
我需要能够做一个post方法默认的“/注册”从一个窗体,即使当我已经通过身份验证。Laravel 5.2默认认证,如何注册时认证
目前它不可能,我没有得到任何错误,但我没有在我的数据库中得到记录。
我的表单和代码在im未登录时起作用 我需要在哪里进行更改才能使用? 我认为它的registersusers.php附近,但代码对我来说是全新的。
默认情况下,您不能这样做,因为访客中间件在用户访问注册页面时停止记录。
在您的AuthController
(由Laravel在app/Http/Controllers/Auth
中提供)中,您可以指定哪些方法应该可供非客人(或经过验证的用户)访问。
默认情况下,只有logout
方法可用于登录用户,但是您可以添加任何您想要的。
public function __construct()
{
$this->middleware($this->guestMiddleware(), ['except' => ['logout', 'showRegistrationForm', 'register']]);
}
showRegistrationForm
是负责显示登录页面和表格,register
负责处理注册和持续它。
这是一个非常简单的解决方案,它工作正常! – cger
从技术上讲,它按预期工作。登录的用户不应该能够注册用户,这是没有意义的。
但是,您可以简单地在您自己的控制器中使用RegistersUsers
特征来尝试注册用户。它是如此简单:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class RegistrationController extends Controller {
uses RegistersUsers;
public function create(Request $request){
return $this->postRegister($request);
}
}
的->postRegister()
方法由RegistersUsers
特征提供。它接受一个\Illuminate\Http\Request
对象并作为依赖注入,因此您只能通过\Illuminate\Http\Request
的实例。您可以通过简单地只调用$this->showRegistrationForm();
,比如这显示registration
形式以及:
public function show(){
return $this->getRegister();
}
现在只需相应附上您的路线。
你能发表一些代码吗?我没有新的Laravel副本来检查默认值...注册控制器和路由文件应该足够了 –
如果您需要这样做(您要求)并且目的是注册(添加另一个用户) “糟糕的设计”。你应该考虑重新思考。 – Kyslik
其系统中只有拥有者可以在他登录时注册新用户.SlateEntropy的解决方案可以工作。 – cger