下面由laravel教程欄目給大家介紹laravel忽略白名單和黑名單,希望對需要的朋友有所幫助!
區別
$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過來也沒用)
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END