Laravel orm 用法整理
- find
指定欄位
$example::find( 666, ['note', 'laravel']);
- replicate
複製一個model
$example = Example:find(666);
$new_example = $example->replicate;
$new_example->save();
- is
判斷model是否相同
$example = Example::find(666);
$first_example = Example::find(666);
$second_example = Example::find(777*S
$example->is($first_example);
//結果會是true
$example->is($second_example);
//結果會是false
- refresh
重新載入model
$example = Example::find(666);
$example->refresh();
// 更新最新的model資料
- push
更新關聯的model資料
$example = Example::find(666);
$example->title = "第一則";
$example->article->title = '更改文章標題';
$example->save();
// 只更新 example 的 title
$example->push();
// 更新 example 與 article 的title
- getChanges
查詢更改的資料
$example = Example::find(666);
$example->title;
// 原始文章標題
$example->title = '新的文章標題';
$example->save();
$example->getChanges());
// [ 'title' => '原始文章標題' ]
getDirty
isDirty
查詢model是否有被更動
$example = Example::find(666);
$example->getDirty();
// []
$example->isDirty();
// false
$example->title = '更改後的新標題';
$example->isDirty();
// true
$example->getDirty();
// [ 'title' => '更改後的新標題']
$example->save();
$example->isDirty();
// false
- getOriginal
查詢修改前的model資料
$example = Example::find(666);
$example->title;
//未更改的原標題
$example->title = "改過後的標題";
//改過後的標題
$example->getOriginal('title');
//未更改的原標題
$example->getOriginal();
//顯示未更改前的資料