acts as ferret & will_paginate

上一篇 / 下一篇  2008-02-22 16:58:44 / 个人分类:RoR、Mysql&linux

首先在你的environment.rb或lib目录下的某文件中添加

module ActsAsFerret
  module ClassMethods
    alias :find_all_by_contents :find_by_contents
    alias :find_all_multi_search :multi_search
  end
end

然后在你的controller中

@query = sanitize(params[:query])

page = params[:page].to_i.zero? ? 1 : params[:page].to_i

@users = User.paginate_by_contents(@query, :total_entries => User.total_hits(@query), :page => page, :per_page => 10)

对已知Array paginate

def search

......

  ids = User.find(....).collect { |u| u.id }

  users = User.find_by_contents(@query, {:limit=>:all}, {:conditions=>["id in (#{ids.join(',')})"]})

......

   @users = users.paginate(page, per_page)     

end


TAG: acts_as_ferret will_paginate

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-07-24  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 1070
  • 日志数: 388
  • 建立时间: 2008-01-02
  • 更新时间: 2008-02-22

RSS订阅

Open Toolbar