Laravel忽略白名单和黑名单

2020年7月27日 242点热度 0人点赞 0条评论
图片

php中文网最新课程

每日17点准时技术干货分享

图片

图片

区别

$fillable 白名单允许插入字段  默认为: []
$guarded 黑名单不允许插入字段 默认为: ['*']  //所有字段设置为黑名单 罪魁祸首

代码

$request->query->set('user_id', Auth::id());Comment::create( $request->all());

这我钟爱的写法,能少写一个就不写两个代码。

当然会插入失败。

解决1

手动把所有字段设置加入到 

protected $fillable = ['user_id','nickname',....];

不考虑这种写法,太麻烦了。

解决2

protectd $guarded = [];

这种写法才爽,因为默认所有字段都是黑名单,重置下就好了。

解决3

static $unguarded = true;

忽略 名单的验证。

跟 解决2 一样舒服。

2和3的问题

要了解为什么需要 白名单 和 黑名单,再做 2,3 的步骤。

并且能保证用户发送不了 破坏 系统的数据。

(比如我这个的user_id,用户发送user_id过来也没用)

图片

图片

请点击下方:“阅读原文”,在线查看!

16680Laravel忽略白名单和黑名单

root

这个人很懒,什么都没留下

文章评论