2017-02-20 98 views
0

我有以下表格:我如何從數據透視表中刪除/添加記錄?

  1. 用戶
  2. user_friends

users - ID,用戶名,電子郵件等。

user_friends - USER_ID,friend_id,例如

我的用戶模型中的關係:

public function friends() 
    { 
     return $this->belongsToMany('App\User', 'user_friends', 'user_id', 'friend_id'); 
    } 

我怎麼可以添加好友或刪除用戶的朋友嗎?我需要爲它創建一個新模型嗎?

加爲好友 - >新記錄添加到user_friends

刪除好友 - >從user_friends

回答

0

刪除特定的朋友(記錄),你應該試試這個:

$user->friend()->sync(['asd', 'asd1', 'asd2']); 

或刪除:

$user->friend()->detach(); 

或新增項目:

$user->friend()->attach(['asd', 'asd1', 'asd2']); 
+0

什麼是同步和其他人之間有什麼不同?並且可以在插入新值之前檢查值是否存在? – TheUnreal

+0

同步刪除所有油炸物品,並附上你給它的數組。分離只是簡單地刪除所有或特定的項目,並附加簡單地添加新的項目對象的朋友關係。 – Buglinjo

+0

你可以找到的,這裏有一個好的文檔: https://laravel.com/docs/5.4/eloquent-relationships#updating-many-to-many-relationships – Buglinjo

相關問題