作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Laravel,数据库中有一个名为“course”的表。它有一些字段,如“标题”、“内容”等......而且我想要一门类(class)有一些先决条件(其他类(class))。我怎样才能实现这个?我可以通过自引用外键来做到这一点,但这样一门类(class)就只有一个先决条件。
最佳答案
由于一门类(class)可以有许多先决条件,并且一个先决条件属于许多类(class),因此它是一种 n:m 关系。
使用字段 id
、course_id
、precession_id
创建数据透视表 course_precession
。
向类(class)模型添加一个具有 BelongsToMany
关系的 preventions()
方法,如下所示:
prerequisites() : BelongsToMany
{
return $this->belongsToMany(Course::class, 'course_prerequisite', 'course_id', 'prerequisite_id')
}
如果您需要反向关系,请添加带有 BelongsToMany
的 courses
方法:
courses() : BelongsToMany
{
return $this->belongsToMany(Course::class, 'course_prerequisite', 'prerequisite_id', 'course_id')
}
关于mysql - 如何在MySQL中实现先决条件表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51122914/
我是一名优秀的程序员,十分优秀!