gpt4 book ai didi

swift - 评估唯一性时忽略软删除条目的数据库约束

转载 作者:搜寻专家 更新时间:2023-11-01 06:52:26 25 4
gpt4 key购买 nike

我有一个 User 模型,用户可以使用它在我的 Vapor (Swift) 应用程序中创建帐户。
User 实现Migration 协议(protocol)如下:

static func prepare(on conn: PostgreSQLConnection) -> Future<Void> {
return Database.create(self, on: conn) { (builder) in
try addProperties(to: builder)
builder.unique(on: \.email)
}
}

现在,这工作得很好,但如果用户(软)删除他们的帐户并尝试再次使用相同的电子邮件地址注册,他们不能,因为该电子邮件已被使用.

如何告诉 builder 在评估唯一性时忽略已删除条目中的值?

最佳答案

您实际上不能告诉 builder 忽略已删除条目中的值,因为构建器只是将 native mysql/postgres 约束添加到您的表中。

添加新用户时,您必须手动执行此操作,例如查询完整的表,包括已删除的条目,然后从那里开始。

关于swift - 评估唯一性时忽略软删除条目的数据库约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56246857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com