我想对Sequelize表声明应用限制。这实际上会通过禁止向表中添加更多行来将表的行总数限制为1。如何在表模型定义中实现这一点?
我不认为只使用一行数据库表是个好主意。
但技术解决方案可以是使用默认主键(例如id: 1
(。这个主键不是自动递增的,也不是任何东西,而是像整数1
这样的静态默认值。因此,除了第一行之外,您不能添加任何其他行,因为主键是唯一的,它的值总是等于1
。所以你只能更新或读取它的价值,如果这就是你试图实现的原因的话。
但这听起来又像是一件反SQL的事情
您可以在sequelize:中使用"limit"选项
findAll({
limit: 2,
where: { YOUR QUERY }
)}
如果您想限制记录,为什么不在控制器/服务/业务逻辑部分这样做呢?
在创建记录之前,您可以findAll
或count
当前用户拥有的记录/行,并应用您的规则
或者,如果适用,您甚至可以添加beforeCreate
挂钩。。。