我是Laravel的新手,想通过例子来理解这一点。 laravel中可填充和防护的主要区别是什么?这些是如何区分的?请分享一个基本的例子。
例1 protected $fillable = ['name', 'email'];
这意味着我们只想插入名称和电子邮件列值
例2
protected $guarded = ['name', 'email'];
这意味着我们只想忽略名称和电子邮件,我们不想插入名称和电子邮件colmn的值
例3
protected $fillable = [];
我们想要插入所有列值
首先作为新手参考laravel网站上的文档。我想你问的是关于可填充vs守卫的问题。
Fillable已准备好进行批量分配,即您可以将fill()与值集的数组一起使用,而不是使用一对一的赋值。名称和电子邮件名称可填写。
class User extends Eloquent{
public $timestamps = false;
protected $fillable = ['name', 'email'];
}
....
$user = User::create($request->all);
守卫就是可填充的对面。
请记住,还有一个“隐藏”,这意味着它不适用于json解析。所以,如果你使用
return User::all();
返回的json将跳过隐藏中提到的所有字段。隐藏也没有明确意味着保护。