Свои правила валидации

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
BERKUT
Сообщения: 16
Зарегистрирован: 2017.06.30, 01:51

Свои правила валидации

Сообщение BERKUT »

Пытаюсь написать правило валидации http://www.yiiframework.com/doc-2.0/gui ... validation
Но оно почему то не срабатывает, в чём загвоздка?
Идея проверить, что в форме по правилам забиты поля cat и cat2.

Код: Выделить всё

public function rules()
    {
        return [
            [['cat', 'cat2'],'validateLocationCategory'],
            ......
            ];

Код: Выделить всё

public function validateLocationCategory()
    {
        $c1 = $this->cat;
        $c2 = $this->cat2;
        if (!is_null($c1) ){
            if(intval($c1) == 0){
                $this->addError($this->cat, 'Select cat1');
            }
            if (!is_null($c2) ){
                $isC2Good = true;
                $pieces = explode(".", $c2);
                foreach ($pieces as $one){
                    if (intval($one) == 0){
                        $this->addError($this->cat2, 'Select cat2');
                        break;
                    }
                }
                unset($one);
            }
        }
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Свои правила валидации

Сообщение Nex-Otaku »

Вместо

Код: Выделить всё

$this->addError($this->cat, 'Select cat1');
нужно

Код: Выделить всё

$this->addError('cat', 'Select cat1');
Для "cat2" - аналогично.
BERKUT
Сообщения: 16
Зарегистрирован: 2017.06.30, 01:51

Re: Свои правила валидации

Сообщение BERKUT »

А не пардон, сработало, всё спс, выручили!
Ответить