W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Eloquent 也提供了一些額外的輔助方法,使相關模型的使用更加方便。例如,我們假設一個用戶可以擁有多個角色,并且每個角色都可以被多個用戶共享。給某個用戶附加一個角色是通過向中間表插入一條記錄實現(xiàn)的,可以使用 attach
方法完成該操作:
$user = App\Models\User::find(1);
$user->roles()->attach($roleId);
在將關系附加到模型時,還可以傳遞一組要插入到中間表中的附加數(shù)據(jù):
$user->roles()->attach($roleId, ['expires' => $expires]);
當然,有時也需要移除用戶的角色??梢允褂?detach
移除多對多關聯(lián)記錄。detach
方法將會移除中間表對應的記錄;但是這兩個模型都將會保留在數(shù)據(jù)庫中:
// 移除用戶的一個角色...
$user->roles()->detach($roleId);
// 移除用戶的所有角色...
$user->roles()->detach();
為了方便起見,attach
和 detach
也允許傳遞一個 ID 數(shù)組:
$user = App\Models\User::find(1);
$user->roles()->detach([1, 2, 3]);
$user->roles()->attach([
1 => ['expires' => $expires],
2 => ['expires' => $expires],
]);
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: