|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
-
-
- use yii\helpers\StringHelper;
-
-
-
-
-
- $modelClass = StringHelper::basename($generator->modelClass);
- $searchModelClass = StringHelper::basename($generator->searchModelClass);
- if ($modelClass === $searchModelClass) {
- $modelAlias = $modelClass . 'Model';
- }
- $rules = $generator->generateSearchRules();
- $labels = $generator->generateSearchLabels();
- $searchAttributes = $generator->getSearchAttributes();
- $searchConditions = $generator->generateSearchConditions();
-
- echo "<?php\n";
- ?>
-
- namespace <?= StringHelper::dirname(ltrim($generator->searchModelClass, '\\')) ?>;
-
- use Yii;
- use yii\base\Model;
- use yii\data\ActiveDataProvider;
- use <?= ltrim($generator->modelClass, '\\') . (isset($modelAlias) ? " as $modelAlias" : "") ?>;
-
-
- class <?= $searchModelClass ?> extends <?= isset($modelAlias) ? $modelAlias : $modelClass ?>
-
- {
-
-
- public function rules()
- {
- return [
- <?= implode(",\n ", $rules) ?>,
- ];
- }
-
-
-
- public function scenarios()
- {
-
- return Model::scenarios();
- }
-
-
-
- public function search($params)
- {
- $query = <?= isset($modelAlias) ? $modelAlias : $modelClass ?>::find();
-
-
-
- $dataProvider = new ActiveDataProvider([
- 'query' => $query,
- ]);
-
- $this->load($params);
-
- if (!$this->validate()) {
-
-
- return $dataProvider;
- }
-
-
- <?= implode("\n ", $searchConditions) ?>
-
- return $dataProvider;
- }
- }
|