1

我有以下型号:

Language

Itemtype

Item
    belongs_to :itemtype

LocalisedItem
    belongs_to :item
    belongs_to :language

LocalisedItem 模型有一个名为“title”的属性。

我想验证所述“标题”属性的唯一性。我的问题是范围:它应该是每种语言(简单)和 itemtype 的唯一,直到现在我才弄清楚该怎么做。

我最好的尝试...

validates :title, :uniqueness => { :scope => [:language_id, 'item.itemtype_id'] }

...失败,出现“NoMethodError:未定义的方法‘item.itemtype_id’”。

有没有办法以描述的方式检查唯一性?

4

1 回答 1

1

您可以使用此格式验证范围的唯一性:

validates_uniqueness_of :title, :scope => :language_id

于 2012-10-22T22:23:13.740 回答