Alguém pode me ajudar em como salvar muitos relacionamentos? Eu tenho tarefas, o usuário pode ter muitas tarefas e a tarefa pode ter muitos usuários (muitos para muitos). O que eu quero alcançar é que no formulário de atualização o administrador possa atribuir vários usuários a uma tarefa específica. Isso é feito por meio de entrada de seleção múltipla html
name="taskParticipants[]"
O problema aqui é que através do mesmo formulário (entrada) você pode adicionar / remover usuários, por isso tenho que usar o sync (). Talvez eu deva começar do início, mas não sei por onde começar ...
Este é o meu modelo de usuário:
public function tasks()
{
return $this->belongsToMany('Task','user_tasks');
}
Modelo de tarefa
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));
}
}
}
Esta é a estrutura das tarefas de tabelas id | título | prazo
user_tasks
id|task_id|user_id