分頁

2012-04-07 30 views
1

我有下面的代碼位:分頁

def index 
    @games = Game.gamsearch(params[:gamsearch]) 
    @games = Game.consearch(params[:consearch]) if params[:consearch].present? 
    @games = Game.gensearch(params[:gensearch]) if params[:gensearch].present? 
    @games = Game.where("game_name LIKE ?", "#{params[:game_name]}%") if params[:game_name].present? 
    @games = Game.where("console = ?", params[:console]) if params[:console].present? 
end 

我希望做的是所有這些結果的分頁。現在我知道如何從一個單一的搜索分頁,因爲我在這裏做:

def index 
    user_relation = case params[:username].present? 
    when true then User.where("username LIKE ?", "#{params[:username]}%") 
    else User 
    end 
    @users = user_relation.paginate :page=>params[:page], :order => 'created_at desc', :per_page => 10 
end 

但遊戲控制器具有搜索的5種可能的方法,並想知道我怎麼會適用分頁到它。

任何幫助將是偉大的,謝謝。

回答

0

這應該可以通過將搜索結果全部追加到相同的數組,而不是分頁這個數組。

喜歡:

def index 
    @games = Array.new() 
    @games << Game.gamsearch(params[:gamsearch]) 
    @games << Game.consearch(params[:consearch]) if params[:consearch].present? 
    @games << Game.gensearch(params[:gensearch]) if params[:gensearch].present? 
    @games << Game.where("game_name LIKE ?", "#{params[:game_name]}%") if params[:game_name].present? 
    @games << Game.where("console = ?", params[:console]) if params[:console].present? 
end 

,然後就分頁的@games對象。

希望這有助於!