在Vapor迁移中添加默认值

时间:2019-08-27 13:48:05

标签: swift vapor vapor-fluent

如何在流畅的迁移中为非可选字段添加默认值? 我目前有此错误:

createSwitchNavigator({
    StackNav: {
        screen: stackNav,
    },
    DrawerNav: {
        screen: drawerNav
     }
})

我唯一的选择是

⚠️ PostgreSQL Error: column "firstName" contains null values

编辑:感谢蒂姆的回答,解决方案是:

public func field<T>(for key: KeyPath<Self.Model, T>, isIdentifier: Bool? = nil)
public func field<T>(for key: KeyPath<Self.Model, T>, type: Self.Model.Database.SchemaFieldType)

2 个答案:

答案 0 :(得分:2)

以防万一有人到达这里并尝试在《蒸气4》中做到这一点:

func prepare(on database: Database) -> EventLoopFuture<Void> {
    let defaultValue = SQLColumnConstraintAlgorithm.default(false)
    return database.schema(“event”)
        .field(“is_private”, .bool, .sql(defaultValue))
        .update()
}

答案 1 :(得分:0)

您还没有看到另一个选择:

185.199.108.153