在laravel中注册有手机号码问题的用户

我希望我的用户使用手机号码和密码在 Laravel 应用程序中注册我编辑了我的注册控制器和我的视图,但移动值没有发送到我的表。


SQLSTATE[HY000]: General error: 1364 Field 'mobile' doesn't have a default value

这是我的注册控制器:


<?php


namespace App\Http\Controllers\Auth;


use App\User;

use App\Http\Controllers\Controller;

use Illuminate\Support\Facades\Validator;

use Illuminate\Foundation\Auth\RegistersUsers;


class RegisterController extends Controller

{

/*

|--------------------------------------------------------------------------

| Register Controller

|--------------------------------------------------------------------------

|

| This controller handles the registration of new users as well as their

| validation and creation. By default this controller uses a trait to

| provide this functionality without requiring any additional code.

|

*/


use RegistersUsers;


/**

 * Where to redirect users after registration.

 *

 * @var string

 */

protected $redirectTo = '/panel/code';


/**

 * Create a new controller instance.

 *

 * @return void

 */

public function __construct()

{

    $this->middleware('guest');

}


/**

 * Get a validator for an incoming registration request.

 *

 * @param  array  $data

 * @return \Illuminate\Contracts\Validation\Validator

 */

protected function validator(array $data)

{

    return Validator::make($data, [

        'mobile' => 'required|string|max:255|unique:users',

        'password' => 'required|string|min:6|confirmed',


    ]);

}


/**

 * Create a new user instance after a valid registration.

 *

 * @param  array  $data

 * @return \App\User

 */

protected function create(array $data)

{

    return User::create([

        'mobile' => $data['mobile'],

        'password' => bcrypt($data['password']),

    ]);

}

}


莫回无
浏览 171回答 1
1回答

青春有我

您将需要更新模型中的$fillable数组User以包括'mobile':protected $fillable = [&nbsp; &nbsp; 'name', 'email', 'password', 'mobile'];当您使用 时create,Laravel 将检查提供的字段是否可批量分配。如果一个字段不可批量分配,那么 Laravel 将忽略它。
打开App,查看更多内容
随时随地看视频慕课网APP