0

検索結果でページネーションを作成する方法を教えてください。ここでいくつか質問を見つけましたが、まだ理解できません。

これが私がやりたいことです、

ユーザーが入力検索を入力すると、システムがページネーションで結果を表示します

ユーザーがページネーションのリンクをクリックすると、検索入力に関する情報を失うことなく、システムがターゲットのページネーションに移動します。

検索条件がセッションに保存されているという情報を見つけましたが、その作成方法がわかりません。

私はそれを作るのに2日を費やしましたが、それでも結果は得られません.

4

2 に答える 2

2
$search_keyword =   $value_you_get_from_search_field || '';  
$this->paginate = array(
    ....
    'conditions' => array(
         'YOURMODEL.field LIKE' => '%' . $search_keyword . '%', // this condition will check for search value to corresponding field you want
         .....
     )
);

$search_results = $this->paginate(); // search result will contain query for your search with pagination

検索フィールドの値を保持するには、次のようにフィールド値を表示するように設定する必要があります。

$this->set(compact('search_results', 'search_keyword'));

そして、次のように検索フィールドを設計する必要があります。

$this->Form->input('fieldname', array('type' => ...., 'value' => $search_keyword, ....));

通知入力フィールドで、コントローラーから送信されたvalueプロパティを として設定しました。$search_keyword最初は '' です。

于 2012-04-15T10:14:56.717 に答える
0

あなたは本当に検索プラグインを調べる必要があります: https ://github.com/dereuromark/search

車輪の再発明をしなくても、この機能を提供します。また、PRGやLIKEなどの簡単に拡張可能な検索構成などの「ベストプラクティス」アプローチも使用します。

于 2012-04-15T11:06:31.720 に答える