2011-12-16 19 views
0

我有我的rails應用程序中的2個模型:書和版本。一本書可以有很多版本。找到:全部 - 條件

我需要獲取由特定作者撰寫的'書籍'的所有'版本'。

由特定作者

@saved_books = Book.find :all, :conditions => ["aut_fk = ?",@aut.id ] 

@saved_books包含由特定作者寫的書的數組找到所有的書籍。

我的問題是如何獲得特定作者撰寫的書籍版本。

@editions = Edition.find(:all, :conditions => [ "book_fk IN (?)", @saved_book.id]) //this code is not correct 

任何建議,非常感謝。

回答

0

我使用下面的代碼,它似乎做的工作: 如果@saved_book應@saved_books,然後將代碼會改變。希望它可能是幫助別人

@edition = Edition.find(:all, :conditions => ["book_fk IN (?)", @saved_books.map{|b| b.id}]) 
1

你有沒有試過?:

@edition = Edition.where(:book_fk => @saved_book.id]) 

編輯 是@ saved_book.id一個數組?它看起來不像。

@edition = Edition.where(:book_fk => @saved_books.map {|b| b.id}]) 

我想......

+0

我只是想ID,但它似乎沒有工作,我得到「未定義的方法'身份證」爲#<陣列:0x55c0e18>」是@saved_book是一個數組 - 是的,你是對的,我應該改名爲@saved_books – tanya 2011-12-16 14:27:17

+0

未定義的方法`在哪裏爲# tanya 2011-12-16 14:31:37