Laravel detach не работает на принадлежит ToMany - PullRequest
0 голосов
/ 03 ноября 2019

У меня есть эта модель: Company
Который имеет отношение: $this->belongsToMany('App\CallList', 'call_list_companies', 'company_id', 'call_list_id')

И наоборот: CallList
Отношение: $this->belongsToMany('App\Company', 'call_list_companies', 'call_list_id', 'company_id')

IЯ могу прикрепить Company к CallList
Но я не могу отсоединить Company от CallList

Почему это так?

Код, который я использую для отделения Компании:
$company->call_lists()->detach($call_list);

Я также попробовал другой способ:
$call_list->companies()->detach($company);

Он просто возвращает нолькогда я это делаю .. Я проверил, что и компания, и список звонков существуют, и что в базе данных есть связь между ними ..

Кто-нибудь знает, что я делаю неправильно? Я не получаю никаких ошибок или чего-либо еще.

Если это стоит упомянуть, я также использую сводную таблицу для отношений.

Заранее спасибо!

1 Ответ

1 голос
/ 04 ноября 2019

Отфильтруйте запрос отношения до списка вызовов с соответствующим идентификатором, а затем наберите detach().

Попробуйте:

$company->call_lists()->where('id', $call_list->id)->detach();
...