2
以下のActiveRecordモデルとアソシエーションがある場合、account_user
ロールが「owner」に設定されているユーザーを参照するアカウントモデルにhas_one :owner
アソシエーションを追加する必要があります。役割を持っているアソシエーションを介してActiveRecord has_oneを作成する
AccountUserモデルは、アカウントのユーザーを通じて多くのユーザーがいる
class AccountUser < ApplicationRecord
enum role: [:user, :admin, :owner]
belongs_to :account
belongs_to :user
end
勘定モデルを属性。
class Account < ApplicationRecord
has_many :account_users
has_many :users, through: :account_users
has_one :owner, -> { where(role: :owner) } #, correct options here.
end
アカウントのユーザーによって多くのアカウントを持っていますユーザーモデル
class User < ApplicationRecord
has_many :account_users
has_many :accounts, through: :account_users
end