我想知道在将用户添加到数据库之前是否可以检查年龄是否为+18。我知道我可以检查 REST 端点上的运行时,但这种方法应该更安全一点(?)。也许可以通过某种方式将带有此检查的原始 SQL 添加到我的迁移中? 这是我第一次在真正的应用程序中使用关系数据库,在 MongoDb 和 mongoose 中,我所要做的就是在模式中定义
age: { type: number, min: 18, max: 99 }
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
name String @unique @db.VarChar(40)
email String @unique @db.VarChar(120)
age Int // check if age is +18 here
}
我相信Prisma不支持任何约束,例如
min
或max
可以在代码中手动检查它,但仍然可以在数据库中将值更改为任何可能的
int
值