ใครสามารถช่วยฉันเกี่ยวกับวิธีการรักษาความสัมพันธ์หลาย ๆ คน? ฉันมีงานผู้ใช้สามารถมีงานหลายอย่างและงานสามารถมีผู้ใช้หลายคน (หลายคนถึงหลายคน) สิ่งที่ฉันต้องการบรรลุคือในการอัปเดตผู้ดูแลระบบสามารถกำหนดผู้ใช้หลายคนให้กับงานเฉพาะได้ สิ่งนี้ทำได้ผ่าน 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