PHP
tips
Laravel
Eloquent

LaravelのModelの忘れがちな設定個人的まとめ


目的


  • 使う場面がたまにあるTipsをまとめる


    • よく忘れるから備忘録として書き留め




created_atとupdated_at関連


  • カラム名の変更

const CREATED_AT = 'カラム名';

const UPDATED_AT = 'カラム名';


  • 使用しない

const CREATED_AT = null;

const UPDATED_AT = null;


primary key関連


  • incrementしない。たまーにある

public $incrementing = false;


  • idではないカラム名の場合


    • 複合主キーの場合、[]を使用し配列にすればいいです



protected $primaryKey = 'カラム名';

protected $primaryKey = ['カラム名', 'カラム名'];


table名変更


  • よく使うかもなやつ

protected $table = 'テーブル名';


それ◯◯◯◯した時に実行したいけど都度書きたくない


  • 種類

creating, created

updating, updated
deleting, deleted
saving, saved
restoring, restored

public static function boot()

{
parent::boot();
static::creating(function (Model $model) {
// 作成する際にしたい何かしらの処理
})
}


物によっては、TraitにするかEloqunet Modelを継承した親Class作ってGlobalScopeにする方がいいとおもいます



まとめ


  • 今後も何かあったら追加します。