我有三个模型如下:
class User < ActiveRecord::Base
...
has_many :feeds
...
end
class Project < ActiceRecord::Base
...
has_many :feeds
has_many :users, through: :feeds
...
end
class Feed < ActiveRecord::Base
...
belongs_to :user
belongs_to :project
...
end
我想模拟用户每个项目最多可以有一个Feed的情况。我知道我可以在Feed类中的自定义验证器中进行此检查,但有没有办法仅使用ActiveRecord关联对其进行建模?
答案 0 :(得分:3)
您可以在Feed.rb上执行此操作:
validates :user_id, :uniqueness => {:scope => :project_id}