Может ли кто-нибудь помочь мне спасти отношения "многие-ко-многим"? У меня есть задачи, у пользователя может быть много задач, а у задачи может быть много пользователей (от многих ко многим). Я хочу добиться того, чтобы в форме обновления администратор мог назначить нескольких пользователей для конкретной задачи. Это делается с помощью ввода множественного выбора html
name="taskParticipants[]"
Уловка здесь в том, что через ту же форму (ввод) вы можете добавлять / удалять пользователей, поэтому я должен использовать sync (). Может, мне стоит начать с самого начала, но я не знаю, с чего начать ...
Это моя модель пользователя:
public function tasks()
{
return $this->belongsToMany('Task','user_tasks');
}
Модель задачи
public function taskParticipants()
{
return $this->belongsToMany('User','user_tasks');
}
TaskController
public function update($task_id)
{
if (Input::has('taskParticipants'))
{
foreach(Input::get('taskParticipants') as $worker)
{
$task2 = $task->taskParticipants->toArray();
$task2 = array_add($task2,$task_id,$worker);
$task->taskParticipants()->sync(array($task2));
}
}
}
Это структура таблиц id | title | deadline
user_tasks
id|task_id|user_id