删除数据透视表行而不知道其中一个外键

时间:2016-06-04 09:44:47

标签: php laravel laravel-5 eloquent

我目前有一个数据透视表(待处理邀请)加入了一个群组表和联系人表。共有4列:

id | group_id | contact_id |电子邮件

电子邮件字段只是所涉及联系人的电子邮件ID。我知道group_id和相应的电子邮件,但不是联系人ID,我需要删除待处理的邀请。标准分离功能:

$groups->contacts()->detach($contact_id);

要求提供联系人ID。有解决方法吗?

1 个答案:

答案 0 :(得分:1)

您只需从数据透视表中手动删除所选行:

\DB::table('contacts_groups')
  ->whereGroupId($groupId)
  ->whereEmail($email)
  ->delete();