Хто-небудь може мені допомогти, як заощадити стосунки багатьох до багатьох? У мене є завдання, користувач може мати багато завдань, і завдання може мати багато користувачів (багато-багато-багато). Що я хочу досягти, так це те, що у формі оновлення адміністратор може призначити декількох користувачів для конкретного завдання. Це робиться за допомогою вводу кількох виділень 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));
}
}
}
Це структура таблиць завдань ідентифікатор | заголовок | термін
user_tasks
id|task_id|user_id