我正在为用户编写一个快速应用程序来跟踪他们的日常账单(用于资金跟踪目的)。我希望用户能够定义自己的类别,法案可以适用。不过,我正在尝试确定建模的最佳方式,并验证类别是否唯一。
class User
include Mongoid::Document
embeds_many :bills
field :categories, :type => Array
end
class Bill
include Mongoid::Document
embeded_in :user, :inverse_of => :bills
field :category
index :category
end
因此,用户可以添加类别,就像添加字符串一样,当他们添加账单时,他们将从账单的可用类别中进行选择。
所以,有几个问题:
-
-
如何验证用户模型中类别的唯一性。我不认为它对这样的数组项有效,但我可能错了。我不希望用户创建同名的类别。我想这可能是一个单独的模型的优点,嵌入到用户中,但是同样的,它似乎比必要的工作要多。
有人能告诉我在这里验证一个用户有唯一类别的最佳选择吗(但是用户可以有相同的类别,我显然不关心这个,只是在单个用户的范围内是唯一的)