Синхронизация и отключение laravel не будут работать при удалении всех экземпляров

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

Хотя синхронизация с параметрами работает для добавления данных в базу данных, мне очень странно, что удаление не сработает. То же самое с синхронизацией только для одного экземпляра, в то время как в базе данных есть больше экземпляров, она удалит другие экземпляры и сохранит один.

Моя функция:

public function update(CreateProjectRequest $request)
        {
            if($request->get('contribute'))
            {
                foreach($request->get('contribute') as $k => $contribute)
                {
                    if($contribute == 1)
                    {
                        $this->project = $this->project->find($request->project_id);
                        $keys[] = $k;
                    }
                }
            }
            if(isset($keys))
            {
                $this->project->users()->sync($keys);
            }
            else
            {

$ This->project-> пользователей ()-> открепление ();

            }

            $this->project = $this->project->find($request->project_id);
            $this->project->fill($request->input())->save();

            return redirect('project');
        }

0 ответов

Другие вопросы по тегам