LoginSignup
10
3

More than 3 years have passed since last update.

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

Last updated at Posted at 2019-06-08

目的

  • 使う場面がたまにあるTipsをまとめる
    • よく忘れるから備忘録として書き留め
connectionの変更
  • 頻度は多くないけど別のDBに接続させたい場合があったりなかったり
protected $connection = '接続先';
  • 接続先
    • これはconfig/database.php内にて定義しているconnectionsのkeyになります
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にする方がいいとおもいます

まとめ

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

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
3