当我启动此命令行 steam run prepare 时,我得到了正确的表,但未添加外键约束。
我有一个Theme类和一个Question类:
主题: 名称, ID
问题: 标题, ID, theme_id
这是我的问题类中的准备数据库功能:
static func prepare(_ database: Database) throws {
try database.create("questions") { questions in
questions.id()
questions.string("title")
questions.parent(Theme.self, optional: false)
}
}
答案 0 :(得分:1)
Fluent 2中添加了外键约束。
答案 1 :(得分:0)
此外,可以在准备期间添加原始SQL语句,这可以帮助您摆脱大多数情况。例如,可以添加此附加行以在多个列之间创建唯一约束。
questions.raw("UNIQUE (pararent_id, title)")
但是有很多用途......