Что бы вы хотели получить в Yii 2?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение samdark »

Если в RBAC забить на роли — получится ACL :)

Gii определённо будем пилить.
Аватара пользователя
BuCeFaL
Сообщения: 447
Зарегистрирован: 2010.03.17, 21:22
Откуда: Kiev
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение BuCeFaL »

Sam Dark писал(а):Можно прописывать и полный путь к классу. Все валидаторы — классы. Наследуйтесь сколько пожелаете.
Спасибо, про путь не знал.
А вот как быть с динамическими правилами валидации ?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение samdark »

С какими такими динамическими?
Аватара пользователя
BuCeFaL
Сообщения: 447
Зарегистрирован: 2010.03.17, 21:22
Откуда: Kiev
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение BuCeFaL »

Sam Dark писал(а):С какими такими динамическими?
Очень редкая и не простая ситуация, которую можно решить своим валидатором или иным способом, когда одно правило валидации зависит от другого.

Например:
К атрибуту foo применяется валидатор baz только если bar не пустой или его длина больше 5. Подобные правила валидации реализованы в SVARX , если я все правильно понял.

UPD:
следует отметить что там не проверка, а описание правил для проверки.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение samdark »

Всё-таки не динамические. SVARX посмотрел, идея понятна. Надо обдумать.
Psih
Сообщения: 31
Зарегистрирован: 2010.05.12, 12:20

Re: Что бы вы хотели получить в Yii 2?

Сообщение Psih »

Добавить поддержку валидации массивов данных. Иногда нужно вводить данные списком и в форме делаешь поле типа name="field[]". Сейчас для таких полей приходится делать кастомный валидатор. Хотелось бы что-то типа такого:

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

/**
 * Declares the validation rules.
 */
public function rules() {
    return array(
        // name, email, subject and body are required
        array('field', 'validateArray', 'rules' => array(
            array('required'),
            array('length', 'min' => 10, 'max' => 20),
            array('match', 'pattern' => '$[a-z]{5}[0-9]{5,}^')
        )),
    );
}
 
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение samdark »

т.е. «применить к каждому» + все должны быть валидны?
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение Ekstazi »

2Psih, тогда уж лучше так:

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

/**
 * Declares the validation rules.
 */
public function rules() {
    return array(
        // name, email, subject and body are required
        array('field[]', 'required'),
            array('field[]','length', 'min' => 10, 'max' => 20),
            array('field[]','match', 'pattern' => '$[a-z]{5}[0-9]{5,}^')
        )),
    );
}
 
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Что бы вы хотели получить в Yii 2?

Сообщение RusAlex »

@Ekstazi , спасибо полезно.
mindochin
Сообщения: 50
Зарегистрирован: 2010.12.13, 20:05

Re: Что бы вы хотели получить в Yii 2?

Сообщение mindochin »

хорошо бы еще предусмотреть общий заголовок таблицы (cgridview), а не только столбцов.
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Что бы вы хотели получить в Yii 2?

Сообщение RusAlex »

cgridview не ядро фрейма
Аватара пользователя
creocoder
Сообщения: 138
Зарегистрирован: 2010.01.24, 05:29
Откуда: Тамбов

Re: Что бы вы хотели получить в Yii 2?

Сообщение creocoder »

Ekstazi писал(а):2Psih, тогда уж лучше так:

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

/**
 * Declares the validation rules.
 */
public function rules() {
    return array(
        // name, email, subject and body are required
        array('field[]', 'required'),
            array('field[]','length', 'min' => 10, 'max' => 20),
            array('field[]','match', 'pattern' => '$[a-z]{5}[0-9]{5,}^')
        )),
    );
}
 
Сверхполезно, почему бы это не сделать прямо в 1.1?
Аватара пользователя
alexk984
Сообщения: 433
Зарегистрирован: 2010.10.21, 15:03
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение alexk984 »

Я не читал всю тему, но было бы удобно чтобы при создании миграций парсилось ее название и на основе него формиировался код миграции если это возможно. Так сделано в RubyOnRails, вещь очень удобная.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение samdark »

М… сейчас и так на вход подаётся название, а на выходе имеем названный им файл и одноимённый класс внутри.
Аватара пользователя
alexk984
Сообщения: 433
Зарегистрирован: 2010.10.21, 15:03
Контактная информация:

Re: Что бы вы хотели получить в Yii 2?

Сообщение alexk984 »

Sam Dark писал(а):М… сейчас и так на вход подаётся название, а на выходе имеем названный им файл и одноимённый класс внутри.
Это далеко не то. Я создаю миграцию add_column_user_id_to_orders_int на выходе должна быть строка

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

$this->addColumn('orders', 'user_id','int'); 
Наверно у вас не будет времени на такие вещи, но штука интересная, хотя для RoR более актуально, так как там можно создать модель и если напишешь create_model_name то он создаст миграцию по существующий модели, а тут более удобно генерировать модель по таблице.
byteasdf
Сообщения: 99
Зарегистрирован: 2010.09.15, 09:01

Re: Что бы вы хотели получить в Yii 2?

Сообщение byteasdf »

Хотелось бы увидеть возможность делать валидаторы для нескольких полей одновременно. Как пример:
- валидировать, что хотя бы один из атрибутов модели не пуст.
- валидировать, что связка из трех атрибутов модели уникальна для модели.
Сейчас валидаторы принимают в себя только один атрибут, емнип.
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Что бы вы хотели получить в Yii 2?

Сообщение RusAlex »

byteasdf писал(а):Хотелось бы увидеть возможность делать валидаторы для нескольких полей одновременно.
я не делал, но можно создавать свои валидаторы.

создайте свой валидатор для группы аттрибутов (в нем делайте что угодно) , внесите его в rules вместе со списком атрибутов.

должно работать.
byteasdf
Сообщения: 99
Зарегистрирован: 2010.09.15, 09:01

Re: Что бы вы хотели получить в Yii 2?

Сообщение byteasdf »

Скажем так, можно валидировать сразу несколько атрибутов. Но стандартный механизм валидации написан для валидации по одному атрибуту.
То есть при правиле array('fielda, fileldb', 'unique') оно переберет поля и для каждого применит валидатор.
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Что бы вы хотели получить в Yii 2?

Сообщение RusAlex »

ну что Вам жалко чтоли, если валидатор отработает несколько раз ? допстуми

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

array('fielda,fieldb', 'ownvalidator') 

и ownValidator() {
if(!empty(fielda) && !empty(fieldb)) {
return true
} else
return false
ну запустится он два раза - не проблема.
Последний раз редактировалось RusAlex 2011.10.04, 21:03, всего редактировалось 1 раз.
Аватара пользователя
RusAlex
Сообщения: 324
Зарегистрирован: 2010.08.29, 15:30

Re: Что бы вы хотели получить в Yii 2?

Сообщение RusAlex »

причем для Вашей задачи подойдет динамическая подгрузка валидаторов в методе beforeValidate()
Последний раз редактировалось RusAlex 2011.10.04, 21:03, всего редактировалось 1 раз.
Закрыто