W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
要從模型新增一條數(shù)據(jù)到數(shù)據(jù)庫,只要建立一個模型實例并調用 save 方法即可。
$user = new User;
$user->name = 'John';
$user->save();
注意: 通常 Eloquent 模型主鍵值會自動遞增。但是您若想自定義主鍵,將 incrementing 屬性設成 false 。
也可以使用 create
方法存入新的模型數(shù)據(jù),新增完后會返回新增的模型實例。但是在新增前,需要先在模型類里設定好 fillable
或 guarded
屬性,因為 Eloquent 默認會防止批量賦值。
在新模型數(shù)據(jù)被儲存或新增后,若模型有自動遞增主鍵,可以從對象取得 id 屬性值:
$insertedId = $user->id;
class User extends Model {
protected $guarded = ['id', 'account_id'];
}
// 在數(shù)據(jù)庫中建立一個新的用戶...
$user = User::create(['name' => 'John']);
// 以屬性找用戶,若沒有則新增并取得新的實例...
$user = User::firstOrCreate(['name' => 'John']);
// 以屬性找用戶,若沒有則建立新的實例...
$user = User::firstOrNew(['name' => 'John']);
要更新模型,可以取出它,更改屬性值,然后使用 save 方法:
$user = User::find(1);
$user->email = 'john@foo.com';
$user->save();
有時您可能不只想要儲存模型本身,也想要儲存關聯(lián)的數(shù)據(jù)。您可以使用 push 方法達到目的:
$user->push();
您可以結合查詢語句,批次更新模型:
$affectedRows = User::where('votes', '>', 100)->update(['status' => 2]);
注意: 若使用 Eloquent 查詢構造器批次更新模型,則不會觸發(fā)模型事件。
要刪除模型,只要使用實例調用 delete 方法:
$user = User::find(1);
$user->delete();
User::destroy(1);
User::destroy([1, 2, 3]);
User::destroy(1, 2, 3);
當然,您也可以結合查詢語句批次刪除模型:
$affectedRows = User::where('votes', '>', 100)->delete();
如果您只想要更新模型的時間戳,您可以使用 touch 方法:
$user->touch();
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: