Парни, хочется вот что...
На сайте будет куча форм. В документации описано, что для каждой ActiveForm-формы требуется создание отдельного файла модели с описанием рулов. Но как-то не комильфо городить огород из кучи файлов-моделей для каждой мало-мальской формы. Можно все эти правила собрать в одном файлике-модели?
Как собрать все правила ActiveForm в одной модели?
Re: Как собрать все правила ActiveForm в одной модели?
Создай файл модели общий с описанием всех полей и сценарий, а потом в контроллере объявляй нужный сценарий.
Re: Как собрать все правила ActiveForm в одной модели?
Если не затруднит, можно подробнее...
Контроллер:
Код: Выделить всё
use app\models\Form;
class SomeController extends Controller
{
public function actionIndex1()
{
$model = new Form();
return $this->render('@app/views/some.php', [ 'model' => $model ]);
}
public function actionIndex2()
{
/* ВОТ ТУТ НАДО ОБЪЯВИТЬ МОДЕЛЬ ДЛЯ ДРУГОЙ ФОРМЫ
$model1 = '???';
*/
return $this->render('@app/views/some.php', [ 'model' => $model1 ]);
}
}
Код: Выделить всё
class Form extends Model
{
public $text;
public function rules()
{
return [
[['text'], 'default', 'value' => '']
];
}
}
Re: Как собрать все правила ActiveForm в одной модели?
Аааа! Я вас понял. В один базовый рулл впихиваем вообще все существующие имена форм, а если потом нужно, запускаем сценарий валидации.
Да, отличное решение. Сам, дурак, не допёр! )))
Да, отличное решение. Сам, дурак, не допёр! )))