1

初めて will_paginate を使用しています。私の最初の実装はうまく機能しています。何かのようなもの:

@products = Product.paginate(:page => params[:page], :per_page => 10)

Product コントローラでは、これにより期待どおりの結果が得られ、製品リストをうまくめくることができます。私が今やろうとしているのは、「ガラス」という言葉を含む製品だけを表示することであり、それを実現する方法がわかりません. 何か案は?

4

2 に答える 2

2

where次のような句を使用します ( @product.name「ガラス」が含まれている必要があると仮定します)。

@products = Product.where('name LIKE ?', '%glass%').paginate(...)

paginateわかりやすくするために削除した引数を忘れないでください。

于 2013-06-06T04:54:38.640 に答える
0

特定の列からのみ「ガラス」という単語を検索したい場合は、次のように使用できます。

 Product.where("'column_name' like ?","% glass %").paginate(:page => params[:page], :per_page => 10)

レコード全体から検索したい場合は、全文検索を使用できます。チェックアウト: http://railscasts.com/episodes/370-ransack?view=asciicast およびhttps://github.com/ernie/ransack

Gem Ransackは全文検索を提供します。

于 2013-06-06T05:13:46.487 に答える