dongqiao1151 2018-11-25 12:32
浏览 184
已采纳

如何在laravel默认身份验证注册表单中保存额外的非必填字段

I am trying to customize the laravel auth registration. And I have added father name field in table and form. But father name field is not required. I added this field in registercontroller.php and in User model also. And then, if submit the form with all fields then data inserts successfully, But if I submit the form without father name field (which is not required), then error comes: f_name filed can not be null.

If I remove f_name from fillable then f_name is not saving.

Method in RegisterController.php is:

protected function create(array $data)
{
    return User::create([
        'name' => $data['name'],
        'email' => $data['email'],
        'f_name' => $data['f_name'],
        'password' => bcrypt($data['password']),
    ]);
}

User.php is:

protected $fillable = [
    'name', 'email', 'f_name' , 'password',
];
  • 写回答

2条回答 默认 最新

  • douzhen5158 2018-11-25 12:50
    关注

    This is because you did not make it nullable in the database.

    The other thing is that you should not code like that. You should create a Request class (where you validate request) for users with php artisan make:request UserRequest in command line or terminal. See the following.

    protected function create(UserRequest $userRequest)
    {
       $user = new User($userRequest->all());
       $user->password => bcrypt($userRequest['password']);
       $user->save();
    
      // your rest of the code.
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?