如何在Laravel中创建用户?
我正在创建一个CMS应用程序,用户应该首先注册 我创建了一个如何在Laravel中创建用户?,laravel,Laravel,我正在创建一个CMS应用程序,用户应该首先注册 我创建了一个RegisterController,在这里我定义了index()方法,该方法返回视图register.blade.php 当用户单击“注册”按钮时,请求应传递到create()方法旁边的/RegisterURL并创建一个用户 既然我已经定义了/register应该打开register.blade.php,那么我如何运行另一个方法在同一URL下创建用户呢 我也不想使用php artisan make:controller Registe
RegisterController
,在这里我定义了index()
方法,该方法返回视图register.blade.php
当用户单击“注册”按钮时,请求应传递到create()
方法旁边的/Register
URL并创建一个用户
既然我已经定义了/register
应该打开register.blade.php
,那么我如何运行另一个方法在同一URL下创建用户呢
我也不想使用php artisan make:controller RegisterController--resource
RegisterController.php
<?php
namespace App\Http\Controllers\Authentication;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class RegisterController extends Controller
{
public function index() {
return view('auth.register');
}
protected function validator(array $data) {
return $data->validate([
'fname' => 'required|string|max:255',
'lame' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|min:6',
]);
}
protected function create(Request $request) {
$this->validator($request->all)->validate();
}
}
为什么不使用Laravel Auth,它将为您构建Auth数据库、视图和逻辑
php artisan make:auth
编辑:
好的,如果我理解正确,你想要你的帖子并指向同一个路由url
Route::match(array('GET','POST'),'/register', 'RegisterController@index');
{
//
});
您可以尝试以下形式的路由:
Route::get('/user', 'UserController@index');
这可能对你有用
此外,别忘了查阅Laravel关于路线的官方文件
https://laravel.com/docs/5.6/routing
这将对您有很大帮助。表单正在向某个路由发送post请求,在本例中,该路由是/register
,但您尚未提供该路由
Route::post('register', 'Authentication\RegisterController@create');
此外,表单操作可以是action=“register”
Nup。我想自己从头开始!更新了我的答案@SanjayI get属性[controller]不存在。
错误。我猜控制器属性在Laravel5.6中不再有效!再次更新,我的坏。。这就是幼虫医生建议我们如何做到这一点@Sanjay如何将其指向控制器?类似于Route::match(数组('GET','POST'),'/register','RegisterController'
https://laravel.com/docs/5.6/routing
Route::post('register', 'Authentication\RegisterController@create');