gpt4 book ai didi

ruby - validates_uniqueness_of 通过两个字段

转载 作者:IT老高 更新时间:2023-10-28 13:23:49 25 4
gpt4 key购买 nike

我有模型:

class Action
include Mongoid::Document
field :name, type: String
field :assignment_date, type: Date
...

index(
[
[ :name, Mongo::ASCENDING ],
[ :assignment_date, Mongo::ASCENDING ]
],
unique: true
)

validates_uniqueness_of [ :name, :assignment_date ]

但是当我尝试插入两个具有相同名称但不同assigned_date 的不同文档时,我收到错误消息:

Mongoid::Errors::Validations - Validation failed - Name is already taken, Assignment date is already taken.:

两个版本我都试过了:

  validates_uniqueness_of [ :name, :assignment_date ]

  validates_uniqueness_of :name, :assignment_date 

如果我评论这一行,一切正常。

最佳答案

Mongoid:

validates_uniqueness_of :name, :scope => :assignment_date

来自文档:请注意,对于嵌入式文档,这只会检查该字段在父文档的上下文中是否唯一,而不是在整个数据库中。

http://mongoid.org/docs/validation.html

关于ruby - validates_uniqueness_of 通过两个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10054102/

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