在 Laravel 中删除行和插入行的最佳方法是啥
Posted
技术标签:
【中文标题】在 Laravel 中删除行和插入行的最佳方法是啥【英文标题】:Which is best way about delete row and insert row in Laravel在 Laravel 中删除行和插入行的最佳方法是什么 【发布时间】:2018-10-13 09:55:12 【问题描述】:作为标题,我有一张像学生这样的桌子,另一张桌子是班级。 用户可以编辑有关学生上课的信息。 有一对多的关系。 当用户编辑学生的班级时,我总是必须删除这个学生的班级。 然后插入新的类。
\App\class:where('student_id',$student->id)->delete();
foreach($request->input('class') as $class)
$new = new \App\class;
$new->student_id = $student->id;
$new->class_id = $class;
$new->save();
这个问题有解决办法吗? 谢谢。
【问题讨论】:
【参考方案1】:目前我假设你的关系设置正确。
你会想看看sync
。
Documentation
$student->classes()->sync($request->input('class'))
sync
方法需要类的 ID 作为参数。
【讨论】:
非常感谢。这个原因是关于多对多的。我有另一个 OneToMany 案例。 OneToMany 还有其他功能吗? @DavidLin 不幸的是,OneToMany 关系没有其他方法 @DavidLin 你能解释一下Class和Student之间的关系吗?一个学生可以在多个班级吗?一个班级是否有多名学生? 您可以添加表单以在您的帖子中编辑学生的课程吗?以上是关于在 Laravel 中删除行和插入行的最佳方法是啥的主要内容,如果未能解决你的问题,请参考以下文章