laravel中可填充和守卫之间的区别是什么?

时间:2016-09-21 12:00:59

标签: laravel laravel-routing

我是Laravel的新手,想通过示例来理解这一点。 laravel中可填充和防护的主要区别是什么? 这些是如何区分的? 请分享一个基本的例子。

2 个答案:

答案 0 :(得分:2)

示例1 protected $fillable = ['name', 'email'];

这意味着我们只想插入姓名和电子邮件的邮件值

示例2

protected $guarded = ['name', 'email'];

这意味着我们只想忽略姓名和电子邮件,我们不想插入姓名和电子邮件colmn的值

示例3

protected $fillable = [];

我们要插入所有列值

答案 1 :(得分:1)

首先作为新手参考laravel网站上的文档。我想你问的是关于可填充和守卫的问题。

Fillable已准备好进行质量分配,即您可以将fill()与值集的数组一起使用,而不是使用一对一的赋值。名称和电子邮件名称可填写。

 class User extends Eloquent{
  public $timestamps = false;
  protected $fillable = ['name', 'email'];
}  

....
    $user = User::create($request->all);

守卫就是可填充的对面。

请记住还有一个“隐藏”,这意味着它不适用于json解析。所以,如果你使用

 return User::all();

返回的json将跳过隐藏中提到的所有字段。隐藏也没有明确表示保护。