我有两个表:日期和时间。这些表彼此之间具有 N:N 关系。所以我为他们使用了一个数据透视表:days_times。
在我看来,单击时需要一个按钮,用所有可能的实例填充数据透视表。例如,如果天中有 2 条记录,时间中有 2 条记录,则处理后的数据透视表应有 4 条记录:
day_id | time_id
1 | 1
1 | 2
2 | 1
2 | 2
让我们考虑一个像ScheduleController@fill
想要处理这个过程的操作。我应该如何实现这一点?
这是我
的回答,不知道有没有更好的解决方案:
public function fill(){
$days = Day::all();
foreach($days as $day)
{
$times = Time::all();
foreach($times as $time)
{
$day->times()->attach($time->id);
}
}
}
我知道这效率不高,但至少它有效。