私は次のモデルを持っています。
User
同じものに何度もサブスクライブできるようにしたくないApp
したがって、これは不可能です。
User.last.apps
=> [#<App id: 78, name: "Name">, #<App id: 78, name: "Name">]
User.last.subscriptions
=> [#<Subscription id: 78, app_id: 78>, #<Subscription id: 79, app_id: 78>]
モデル
User
has_many :subscriptions, :dependent => :destroy
has_many :apps, through: :subscriptions
Subscription
validates :user_id, uniqueness: { scope: :app_id }
belongs_to :user, touch: true
belongs_to :app
App
validates_uniqueness_of :name
belongs_to :user, touch: true
belongs_to :app