包括条件轨道的关联2.3

时间:2015-05-19 11:48:58

标签: ruby-on-rails ruby-on-rails-2

我有一个模型图书,有2个关联说,名称名称(有条件)。

 class Book
   has_one :name, :conditions => 'place = "Bangalore"', :order => 'id DESC'
   has_many :names, :order => 'id DESC'
 end

基本上, name 给出了书上更新的最新名称,而名称将是所有分配给书籍的名称列表。

我使用paginate gem对结果进行分页。

@result.paginate(:select => "books.*", :include => :book)

但上述查询包括所有书籍而不是最后一本书(即书籍)。有没有办法在 Rails 2.3 中指定包含条件?我试过这个,但徒劳无功。

 @result.paginate(:select => "books.*", :include => :book,:joins => :book, :conditions => 'books.palce="Bangalore"', :order => 'books.id DESC', :limit => 1)

任何帮助都将受到高度赞赏。感谢

2 个答案:

答案 0 :(得分:0)

你可以试试这种方式

class Book
  named_scope :bangalore, :conditions => 'place = "Bangalore"' 
end

然后

@result.bangalore.paginate(...)

答案 1 :(得分:0)

我认为你可以这样做:

@result.joins(:book).includes(:book).paginate(..)