Swift 使用PostgreSQL添加外键约束

Swift 使用PostgreSQL添加外键约束,swift,postgresql,foreign-keys,fluent,vapor,Swift,Postgresql,Foreign Keys,Fluent,Vapor,当我启动这个命令行时,我得到了正确的表,但是没有添加外键约束 我有主题课和问题课: 主题: 名称 身份证 问题: 标题 身份证件 主题标识 这是“我的问题”类中的“准备数据库”函数: static func prepare(_ database: Database) throws { try database.create("questions") { questions in questions.id() questions.s

当我启动这个命令行时,我得到了正确的表,但是没有添加外键约束

我有主题课和问题课:

主题: 名称 身份证

问题: 标题 身份证件 主题标识

这是“我的问题”类中的“准备数据库”函数:

static func prepare(_ database: Database) throws {

        try database.create("questions") { questions in
            questions.id()
            questions.string("title")
            questions.parent(Theme.self, optional: false)
        }


    }

Fluent 2中添加了外键约束:

try database.create(self) { builder in
    builder.foreignKey("user_id", references: "id", on: User.self)
}
更多信息请点击此处:

此外,在准备过程中可以添加原始SQL语句,这可以使您摆脱大多数情况。例如,可以添加此附加行以跨多个列创建唯一约束

questions.raw("UNIQUE (pararent_id, title)")

但有很多用途……

这似乎不再是受支持的方式。在Vapor 3.0和4.0中我们如何做到这一点?