我创建了一个简单的用户注册应用程序:
notifyDataSetChanged()
当然我为它添加了迁移:
$confirmation_key = str_random(100);
$data = [
'email' => $post['email'],
'password' => Crypt::encrypt($post['password']),
'confirmation_key' => $confirmation_key
];
User::create($data);
用户已成功添加到数据库中,但确认密钥仍为null,未更改。 其他问题:如果我想在User表中添加其他列,该怎么办?我需要做什么?
答案 0 :(得分:3)
您需要确保已将confirmation_key
添加到$fillable
模型的User
属性中,如下所示:
protected $fillable = ['email','password','confirmation_key'];
如果要添加其他列,则需要创建新的迁移并运行它,如果要使此列可填充,则需要将其添加到$fillable
模型的User
属性。
修改强>
如果您想使用create
fill
方法使任何列无法填充,您可以将其添加到表中,并且不可能简单地执行此操作:
User::create($data);
在这些情况下,你需要这样的东西:
// here you fill fillable data
$user = new User($data);
// this way you can fill properties that are not fillable
$user->some_not_fillable_property = 'some value';
// now you save it to database
$user->save();