この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:T
更新日時:2018-04-21 13:29:23

タイトル: $fillable $guarded $hiddenの説明
SEOタイトル: Laravel の $fillable / $guarded / $hidden の説明

この記事の要点
  • Laravel Eloquent モデルの$fillable / $guarded / $hidden の使い分け
  • $fillable: 一括代入(create() / update())で許可するカラムをホワイトリスト指定
  • $guarded: 禁止するカラムを指定(fillable と逆)。[] で全許可
  • $hidden: JSON 化(toArray / toJson)時に隠す属性。password

 

以下の例を参考に説明する。

class User extends Authenticatable
{
    protected
$fillable = [
        'name', 'email', 'password',
    ];

    protected $guarded = [
        'create_at','update_at'
    ];

    protected $hidden = [
        'password', 'remember_token',
    ];
    

}

$fillableはcreate()やupdate()を受け付けるいわゆるホワイトリスト

$guardedはcreate()やupdate()を受け付けないいわゆるブラックリスト

$hiddenはパスワードなどの秘匿性の高い属性に付与することでJSONに含まれなくなる。