Одни rules для множества моделей
У меня есть две модели: Для регистрации и для авторизации пользователя. Каждая моделька имеет соответственно свои валидаторы.
Например, rules для авторизации:
public function rules()
{
return [
[['username', 'password'], 'required'],
[['username', 'password'], 'length', 'max' => 100],
['rememberMe', 'boolean'],
['password', 'validatePassword'],
];
}
rules для регистрации:
public function rules()
{
return [
[['username', 'password', 'firstname', 'lastname'], 'required'],
[['username', 'password'], 'length', 'max' => 100],
['username', 'unique'],
];
}
Как вы видите, rules в некоторых местах отличаются, однако в них одно общее правило: username и password и там и там обязательны для заполнения, а также имеют максимальную длину в 100 символов.
Так вот, пока моделек у меня всего две, однако когда число моделек возрастет до 5-6, и, чисто теоретически, появится задача изменить максимальную длину username и password со 100 до 200 символов, то придется это делать вручную. Заходить в каждую модельку и ручками править. Мое мнение - это не очень практично, поэтому хотелось бы знать - есть ли в Yii2 возможность вынести одинаковые rules для определенных моделек в какой-нибудь отдельный файл / функцию? Чтобы например в случае, если понадобится изменить длину username и password мне достаточно было бы залезть в один файл и поправить это дело. Надеюсь понятно объяснил.