我有以下Rails定义:
Class Book
string title
has_many readings
has_many users, :through => :readings
Class Reader
int rating
belongs_to :book
belongs_to :user
Class User
has_many readings
has_many books, through => :readings
不,我想这样查询:
向我提供具有book.title =“test”
的用户A的所有读数评级 你可以帮帮我吗?谢谢!答案 0 :(得分:1)
这将为您提供一本书的所有评级数组 标题为“test”的用户阅读,名称为“A”
User.find_by_name("A").books.find_by_title("test").readings.map{|r| r.rating }
但说实话,我真的不确定这是不是你想要的。
答案 1 :(得分:1)
您可以包含相关模型并将其用作参数。
Users.find(
:all,
:include => {:readings => :books},
:conditions => "books.title = ? AND etc"
)
显然不是100%正确,但应该给你正确的想法。