После нескольких часов отладки и попытки решить проблему, я не нашел решение. Поэтому я надеюсь, что вы можете мне помочь.Detach Laravel 5.3
У меня есть этот маленький кусочек кода:
$removed = false;
if ($store->persons->contains($person)) {
$store->persons()->detach($person);
$removed = true;
}
var_dump($removed);
Моя проблема заключается в том, что я не могу понять, почему $ удалить это «ложь» всегда. Если я прокомментирую строку $ store-> persons() -> detach ($ person) ;, все будет работать так, как ожидалось, и $ removed будет "true". Я не понимаю, почему это происходит, но я надеюсь, что вы можете мне помочь.
EDIT
public function removePerson(Request $request, $storeId, $personId)
{
$store = Store::findOrFail($storeId);
$person = Cashier::findOrFail($personId);
$removed = false;
if ($store->persons->contains($person)) {
$store->persons()->detach($person);
$removed = true;
}
return response()->json([
'removed' => $removed,
]);
}
Спасибо.
Я чувствую, что нам не хватает информации здесь. Не могли бы вы отправить больше кода? Где вы называете кассиров? –
Ошибка Кассиров. Я добавил полный код метода. Спасибо. –