Browse Source

Adjusted search model code generated by Gii CRUD generator

tags/2.0.0-beta
Alexander Makarov 11 years ago
parent
commit
36c59dce9c
  1. 4
      extensions/gii/generators/crud/Generator.php
  2. 19
      extensions/gii/generators/crud/default/search.php

4
extensions/gii/generators/crud/Generator.php

@ -400,10 +400,10 @@ class Generator extends \yii\gii\Generator
case Schema::TYPE_TIME:
case Schema::TYPE_DATETIME:
case Schema::TYPE_TIMESTAMP:
$conditions[] = "\$this->addFilter(\$query, '{$column}');";
$conditions[] = "\$query->andFilter(['{$column}' => \$this->{$column}]);";
break;
default:
$conditions[] = "\$this->addFilter(\$query, '{$column}', true);";
$conditions[] = "\$this->addFilter(['like', '{$column}', \$this->{$column}]);";
break;
}
}

19
extensions/gii/generators/crud/default/search.php

@ -70,23 +70,4 @@ class <?= $searchModelClass ?> extends Model
return $dataProvider;
}
protected function addCondition($query, $attribute, $partialMatch = false)
{
if (($pos = strrpos($attribute, '.')) !== false) {
$modelAttribute = substr($attribute, $pos + 1);
} else {
$modelAttribute = $attribute;
}
$value = $this->$modelAttribute;
if (trim($value) === '') {
return;
}
if ($partialMatch) {
$query->andWhere(['like', $attribute, $value]);
} else {
$query->andWhere([$attribute => $value]);
}
}
}

Loading…
Cancel
Save