1

次の3つのモデルがあります。

    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

ユーザーがプロジェクトごとに最大 1 つのフィードを持つことができる状況をモデル化したいと考えています。Feed クラス内のカスタム バリデータでこのチェックを実行できることはわかっていますが、ActiveRecord 関連付けのみを使用してこれをモデル化する方法はありますか?

4

1 に答える 1

3

Feed.rb でそれを行うことができます。

validates :user_id, :uniqueness => {:scope => :project_id}
于 2013-05-15T01:36:52.933 に答える