@iceman2112

Почему на срабатывает валидатор в yii2?

Есть модель метод rules()
public function rules()
    {
       ....

            [['url'], '\backend\components\BannerValidator'],
           ....
    }


Соответственно \backend\components\BannerValidator:
namespace backend\components;

use Yii;
use yii\validators\Validator;

class BannerValidator extends Validator
{
    /**
     * @inheritdoc
     */
    public function validateAttribute($object, $attribute)
    {
        $this->addError($object, $attribute, 'errrerer');
    }
}


Во view:

<?= $form->field($model, 'url')->textInput(['maxlength' => 255]) ?>


Почему при нажатие отправки форму не срабатывает валидатор?
  • Вопрос задан
  • 3221 просмотр
Пригласить эксперта
Ответы на вопрос 1
@LAV45
Нужна ещё описать метод clientValidateAttribute, как пример можно глянуть тут =>
https://github.com/yiisoft/yii2/blob/master/framew...

ИЛИ

Проблема в контроллере, вот рабочий пример =>
public function actionCreate()
    {
        $model = new Menu();
        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['view', 'id' => $model->id]);
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы