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

问题描述 投票:0回答:2

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

laravel laravel-routing
2个回答
2
投票

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

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

例2

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

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

例3

protected $fillable = [];

我们想要插入所有列值


1
投票

首先作为新手参考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将跳过隐藏中提到的所有字段。隐藏也没有明确意味着保护。

© www.soinside.com 2019 - 2024. All rights reserved.