2012-02-19 23 views
0

私はレール初心者ですので、誰かが私を助けてくれることを願っています。レール競合で競合が激しくなる

は、ここに私のコード

def index 
    @todos = Todo.order(sort_column + " " + sort_direction) #sorts table columns 
    @todos = Todo.page(params[:page]).per(1)     #pagination 
    @todos = Todo.search(params)        #search filter 

    respond_to do |format| 
    format.html # index.html.erb 
    format.json { render json: @todos } 
    end 
end 

ソート、改ページ、および自分で完璧にすべての仕事を探しているが、一度にすべての3つの変数を宣言するとき、明らかにそれは、競合を引き起こしています。

これらの変数に異なる名前を付けるという問題を回避する方法がわからないので、アプリのコンテキストでは動作します。

何か助けていただければ幸いです。

+0

meta_searchとkaminariを使用していますか? – lucapette

+0

返事をありがとう。私はあなたの提案を試みましたが、# iveのためのメソッド '連鎖 'のメソッドは連鎖していましたが、無駄な定義されていないエラーが発生しました。私はページネーションにカミナリを使用して、検索のためのタイヤの宝石で弾性検索 – user1219092

+0

を参照してください。私は答えを更新しました – lucapette

答えて

0

あなたが呼び出しを連鎖することができます:私はあなたが雷を使用している想定し、少しので、順序を変更した

@todos = Todo.order(sort_column + " " + sort_direction).search(params).page(params[:page]).per(1) 

、改ページは常に呼び出すための最後の方法でなければなりません。これは、検索メソッドがActiveRecord関係を返す場合にのみ機能します。

EDIT

のコメントを読んで、私はあなたがタイヤを使用しているとします。カミナリをサポートしているようですが、あなたがしなければならないいくつかの努力があります。 this discussionをご覧ください。残念ながら、私はタイヤに精通していません。

+0

とにかく大丈夫 – user1219092