3
CGridViewのフィルタを、その時点で1つの列の複数の単語で動作させたいです。例えば、私は最初の列に "A"を加え、同じ列に "B"を付けたすべての行を表示するとします。Yii CGridView Filter
これを行うためにどのクラスや関数を上書きする必要があるのか誰かが知りませんか?
CGridViewのフィルタを、その時点で1つの列の複数の単語で動作させたいです。例えば、私は最初の列に "A"を加え、同じ列に "B"を付けたすべての行を表示するとします。Yii CGridView Filter
これを行うためにどのクラスや関数を上書きする必要があるのか誰かが知りませんか?
モデル内のsearch()関数を変更する必要があります。
$criteria->compare('your_column_name', $this->your_column_name, true);
あなたがます$ this-> your_column_nameである入力を破り、1は入力の各要素のための条件を比較追加することによって、それを変更することができます - 検索()関数は、次のようなものを持っています。あなたは、explode()を使って文字列を複数の単語に分割することができます。
ありがとう、ありがとう、私は 'OR'として比較メソッドのオペレータパラメータを記入する必要があります。 – maty42
compare関数は5つのパラメータを受け取ります。そのうちの3つはオプションです。第4引数は演算子を指定します。$ criteria-> compare( 'your_column_name'、$ this-> your_column_name、true、 'OR') 詳細については、apiのドキュメントを参照してください - http://www.yiiframework.com/doc/ api/1.1/CDbCriteria#比較詳細 –