From dee48a69c7f8ed779bcf255dd135ec3af112c32e Mon Sep 17 00:00:00 2001 From: Lennart van den Dool Date: Fri, 22 May 2015 15:31:16 +0200 Subject: [PATCH 1/4] Support filtering with operators in GridView filter values Depends on PR yiisoft/yii2#8505 Related to yiisoft/yii2#2022 --- generators/crud/Generator.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/generators/crud/Generator.php b/generators/crud/Generator.php index 3a58b4423..9e565f2c2 100644 --- a/generators/crud/Generator.php +++ b/generators/crud/Generator.php @@ -397,14 +397,16 @@ public function generateSearchConditions() } } - $likeConditions = []; + $compareConditions = []; $hashConditions = []; foreach ($columns as $column => $type) { switch ($type) { + case Schema::TYPE_BOOLEAN: + $hashConditions[] = "'{$column}' => \$this->{$column},"; + break; case Schema::TYPE_SMALLINT: case Schema::TYPE_INTEGER: case Schema::TYPE_BIGINT: - case Schema::TYPE_BOOLEAN: case Schema::TYPE_FLOAT: case Schema::TYPE_DOUBLE: case Schema::TYPE_DECIMAL: @@ -413,10 +415,10 @@ public function generateSearchConditions() case Schema::TYPE_TIME: case Schema::TYPE_DATETIME: case Schema::TYPE_TIMESTAMP: - $hashConditions[] = "'{$column}' => \$this->{$column},"; + $compareConditions[] = "->andFilterCompare('{$column}', \$this->{$column})"; break; default: - $likeConditions[] = "->andFilterWhere(['like', '{$column}', \$this->{$column}])"; + $compareConditions[] = "->andFilterCompare('{$column}', \$this->{$column}, 'like')"; break; } } @@ -427,8 +429,8 @@ public function generateSearchConditions() . str_repeat(' ', 12) . implode("\n" . str_repeat(' ', 12), $hashConditions) . "\n" . str_repeat(' ', 8) . "]);\n"; } - if (!empty($likeConditions)) { - $conditions[] = "\$query" . implode("\n" . str_repeat(' ', 12), $likeConditions) . ";\n"; + if (!empty($compareConditions)) { + $conditions[] = "\$query" . implode("\n" . str_repeat(' ', 12), $compareConditions) . ";\n"; } return $conditions; From 2365dfc200f05fd5891672f780343029ff45e33f Mon Sep 17 00:00:00 2001 From: Lennart van den Dool Date: Fri, 22 May 2015 15:41:22 +0200 Subject: [PATCH 2/4] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3723165bc..45d742aac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ Yii Framework 2 gii extension Change Log ----------------------- - Chg #38: Added compatibility with latest Typeahead version (razvanphp) - +- Chg #43: Added support for GridView filtering on values starting with basic operators to CRUD Generator (yii2#2022) 2.0.4 May 10, 2015 ------------------ From 3df896a3044b94b96434104699b46b8614ce262c Mon Sep 17 00:00:00 2001 From: Lennart van den Dool Date: Sat, 23 May 2015 20:22:51 +0200 Subject: [PATCH 3/4] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 45d742aac..29659d03a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,8 @@ Yii Framework 2 gii extension Change Log 2.0.5 under development ----------------------- +- Enh #2022: Added support for GridView filtering on values starting with basic operators to CRUD Generator - Chg #38: Added compatibility with latest Typeahead version (razvanphp) -- Chg #43: Added support for GridView filtering on values starting with basic operators to CRUD Generator (yii2#2022) 2.0.4 May 10, 2015 ------------------ From 85a51bc31f44289f5e38af388243c1832e211917 Mon Sep 17 00:00:00 2001 From: Lennart van den Dool Date: Tue, 2 Jun 2015 10:47:58 +0200 Subject: [PATCH 4/4] Update CHANGELOG.md [skip ci] --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c8d4cbb2..f4e50d54b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ Yii Framework 2 gii extension Change Log ----------------------- - Enh #42: Entire preview code now can be copied by pressing CTRL+C (thiagotalma, samdark) -- Enh #2022: Added support for GridView filtering on values starting with basic operators to CRUD Generator +- Enh #2022: Added support for GridView filtering on values starting with basic operators to CRUD Generator (lennartvdd) - Chg #38: Added compatibility with latest Typeahead version (razvanphp) 2.0.4 May 10, 2015