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

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

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

Сообщение samdark »

Почему, может и примем.
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

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

Сообщение Skiller »

Кстати хотел спросить, т.к. отказались от CDbCriteria, то насколько сильно изменится commandBuilder() и будет ли он вообще? у него просто есть много всяких плюшек крутых, типа валидации данных, через typecast() когда используется схема таблицы, это очень полезно и нужно, + дополнительная защита данных.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

Билдер будет. Немного изменился.
Аватара пользователя
sequester
Сообщения: 95
Зарегистрирован: 2012.01.09, 16:20
Откуда: Донецк, Украина

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

Сообщение sequester »

Не знаю, звучало или нет, но
В Gii при генерации CRUD, можно поставить галочку "overwrite" (если уже существует данные контроллеры и вьюхи), но нет галочки "Сохранить старый код". Было бы удобно.
Спасибо.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

Что такое «сохранить старый код»?
Аватара пользователя
because
Сообщения: 689
Зарегистрирован: 2010.09.30, 22:01

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

Сообщение because »

Возник вопрос, будет ли возможность закреплять поведения к системным компонентам, например к CModel, CValidator и тп. Сейчас как я понял такой возможности нет http://www.yiiframework.com/forum/index ... entry54479
RTFM !
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

Сейчас можно прикрепить behavior к любому CComponent.
Аватара пользователя
sequester
Сообщения: 95
Зарегистрирован: 2012.01.09, 16:20
Откуда: Донецк, Украина

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

Сообщение sequester »

Sam Dark писал(а):Что такое «сохранить старый код»?
К примеру, когда добавил пару методов к модели, потом пришлось добавить в таблицу еще поля. Иду в Gii -> generate model, генерирую эту модель. Если поставлю галочку "перезаписать", старая модель сотрется. Так вот я предлагаю сделать галочку "Сохранить старый код".
Генерится новая модель model_name, а старая не перезаписывается, а сохраняется как model_name_old (там же методы наши).
Вот как то так.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

Там есть опция diff. Оттуда можно быстро скопировать изменения.
Аватара пользователя
komusito
Сообщения: 14
Зарегистрирован: 2011.12.03, 19:46

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

Сообщение komusito »

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

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

Сообщение samdark »

Что мешает сделать её в Yii 1.1?
Аватара пользователя
Insolita
Сообщения: 788
Зарегистрирован: 2011.06.06, 01:39
Контактная информация:

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

Сообщение Insolita »

В презентации было упомянуто в "TODO если успеем" - пункты "Twitter Bootstrap" и "виджеты на базе Jquery UI" - можно узнать эти планы подробнее Всё таки jQueryUi и Bootstrap во многих аспектах пересекаются (хотя у каждого из них и своих плюшек достаточно) - к какой точке балланса между ними пришли разработчики?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

Bootstrap будет в одном из нескольких возможных стартовых каркасов. Обязательным он не будет.

В jQueryUI есть https://github.com/jquery/jquery-ui/blo ... ui.core.js. Вот на нём всё и будет.
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

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

Сообщение Ekstazi »

2Sam, Хорошая новость! Еще один мой репорт воплотится в жизнь. Молодцы ребята, с нетерпением жду 2-й версии.
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

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

Сообщение Skiller »

Скоро сайтов с твиттер бутстрап будет столько что просто ппц уже(( или это вы про нормальный бутстрап как в Zend например?вот его не хватает точно
Аватара пользователя
web-leaf
Сообщения: 90
Зарегистрирован: 2011.02.05, 12:41

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

Сообщение web-leaf »

смотрел видео YiiConf услышал, что будет фича с возможностью возвращать данные asArray. я этого очень ждал... спасибо!
Красиво - это когда нет ничего лишнего.
Yiivgeny
Сообщения: 80
Зарегистрирован: 2010.11.24, 10:39

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

Сообщение Yiivgeny »

Есть некоторые пожелания, которые больше относятся к PHP чем к Yii, но тем не менее можно сделать прослойку которая решит эту проблему.

В частности я говорю об отделении ошибок от исключений, мне кажется это неправильным, и во фреймворке эти две сущности постоянно идут параллельно, а не единообразно.

Предлагаю такое решение:

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

class PHPErrorException extends Exception{
    
    protected $context; 
    
    public function __construct($errno, $errstr, $errfile, $errline, $errcontext) {
        $this->file = $errfile;
        $this->line = $errline;
        $this->context = $errcontext;
        parent::__construct($errstr, $errno);
    }
    
    public final function getContext(){
        return $this->context;
    }
    
}
set_error_handler(
    function ($errno, $errstr, $errfile, $errline, $errcontext){
        if (error_reporting() & $errno) 
            throw new PHPErrorException($errno, $errstr, $errfile, $errline, $errcontext);
    }, 
    error_reporting()
); 
В итоге помимо унификации работы со всеми видами неожиданностей (нивелирование отличий в обработке и рендеринге ), мы получаем еще возможность делать так:

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

try{
    fopen('/nonexistant', 'r');

}
catch (PHPErrorException $e){
    echo 'И не надо делать никакой file_exists';
}
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

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

Сообщение samdark »

file_exists вообще штука вредная из за race condition. Использовать исключения, к сожалению, в этом случае не вариант потому как выбросив исключение в catch, а там оно может быть викинуто, мы получим очень гадкую ситуацию:

https://bugs.php.net/bug.php?id=60909
https://bugs.php.net/bug.php?id=61767

и так далее.

Остаётся не идеальный, но вполне рабочий вариант с @.
Yiivgeny
Сообщения: 80
Зарегистрирован: 2010.11.24, 10:39

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

Сообщение Yiivgeny »

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

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

Сообщение samdark »

Я бы тоже не прочь, если бы всё бросало исключения, но так уж PHP устроен. Ничего не поделать кроме как ждать php core team или помогать им.
Закрыто