1

私は2つの別々に、同じオブジェクトを指す1つの関係を介して多くを持っています。

  • ユーザーはphoto_relationshipsを通じて多くの写真を持っています
  • ユーザーは投票を通じて多くの写真を持っています

私のコントローラーでは、次のコードを使用してユーザーにすべての写真を表示しようとしています。

@user = User.find(params[:id])
@photos = @user.photos

ただし、内部結合は、ユーザーモデルで最後に言及されているhas_many関係(この場合は投票)によって制御されています。次のように、使用する内部結合を指定する方法はありますか?

@photos = @user.photos( joins: :photo_relationships)
4

1 に答える 1

0

このようなことをします:

class User
  ...
  has_many :voted_photos,        class_name: 'Photo', through: :votes
  has_many :relationship_photos, class_name: 'Photo', through: :photo_relationships
end
于 2013-03-04T19:36:25.450 に答える