2013-03-04 58 views
1

我有兩個單獨的具有多個指向相同對象的關係。多個關係指向相同的模型 - 通過ruby獲取數據

  • 用戶可以通過photo_relationships許多照片
  • 用戶有很多照片通過投票

在我的控制,我想顯示的所有照片,通過這個代碼的用戶:

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

但是,內部連接受到用戶模型中最後提到的任何has_many關係的控制,在這種情況下爲投票。是否有指定內部連接用途是什麼,例如一個辦法:

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

回答

0

做這樣的事情:

class User 
    ... 
    has_many :voted_photos,  class_name: 'Photo', through: :votes 
    has_many :relationship_photos, class_name: 'Photo', through: :photo_relationships 
end 
+0

謝謝了!我在代碼中添加了source::照片,這使我可以單獨離開其他模型。 [這篇文章](http://stackoverflow.com/questions/408872/rails-has-many-through-find-by-extra-attributes-in-join-model)也幫助我,一旦你讓我在右邊方向。 – 2013-03-04 20:06:57

相關問題