ruby on Railsの関連付けについて質問させてください。
userとorganizationモデルそしてuserごと持ってる組織情報のデータを管理するuser_organization
モデルがあります。
ですので、user_organizationはuser_idとorganization_idを両方持ってます。
userは複数のuser_organizationモデルを持ってるのでhas_many扱いが正しいかもですが、
実際はorganization_idをfind_byして使うためhas_one扱いの場合が多いです。
ただ、
この場合、userとuser_organizationの関連付けをhas_oneのように使う方法がわかりませんでした。
以下の記事を参考して
has_oneに引数を追加してみましたが、正常に動きません。
https://stackoverflow.com/questions/30144950/rails-has-many-and-has-one-with-argument
#app/models/user.rb has_one :user_organization, -> (org) { where organization_id: org.id}, class_name: 'UserOrganization'
User.first.user_organization => nil User.first.user_organization(Orgnization.first) => ArgumentError: wrong number of arguments (given 1, expected 0)
何かいい方法がありましたら教えていただけますでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/07 03:37