Yii 2 alpha
2 декабря 2013
Вышла первая альфа версия Yii 2. Скачать в виде архива её можно с официального сайта. Там же приведены инструкции по установке через Composer.
Yii 2 является полностью переделанной версией одного из самых популярных PHP-фреймворков. В новой версии унаследован общий дух первой версии, а именно стремление к простоте, скорости и расширяемости. В Yii 2 применяются многие возможности PHP 5.4. Фреймворк следует лучшим практикам современной веб-разработки.
Полное описание возможностей вы можете найти в полном руководстве и, в особенности в разделе с отличиями от версии 1.1.
Выпуск альфы является важным событием в разработке Yii 2 и означает, что код достиг определённой степени стабильности. Если вы только начинаете изучать Yii или у ваш проект не ограничен жёсткими временными рамками, можно попробовать новую версию. Не используйте Yii 2 в боевых проектах так как команда фреймворка всё ещё может внести значительные изменения без каких-либо предварительных уведомлений.
В течение двух лет было получено огромное количество кода от сообщества. Спасибо вам, что сделали этот релиз возможным.
Комментарии RSS по email OK
Отличная новость! Есть один вопрос. А зачем объекту метод className? в 5.4 же вроде есть ::class, который делает то же самое?
Spider, в 5.5.
Великолепная новость!
Александр, какие же у вас тролли на гитхабе: https://github.com/yiisoft/yii2/issues/1368
Вы молодцы, что не слушаете теоретиков и троллей и делаете Yii именно для того, что бы можно было писать быстро, просто, качественно и расширяемо.
Спасибо за труды!
Отлично! Быстрее бы stable :)
Такой вопрос... Сейчас в свободное время делаю проект на 1.x, сроков жестких нет, т.к. делаю для себя. Планирую запустить примерно через пол года. Стоит ли делать его сразу на Yii 2? Обновлять потом с 1.x на 2.x, как я понял, будет проблемно?
В этом случае можно и на Yii 2. Только сразу будьте готовы к нежданным поломкам и багам.
Еще бы бутстрап не был так костыльно вшит в CHtml и ActiveField и можно было бы переезжать.
Думаю на то она и alpha чтобы люди пробовали что плохо лежит)
Не могу сообразить, каким образом в yii2 искать по внешнему ключу?
Такое? - www.yiiframework.ru/forum/viewtopic.php?f=19&t=15707 Или что вы хотите, kmtz?
Алексей,
Да, именно такое... Попробовал сейчас совет mc-bear , тоже не получается. Пойду на форум спрашивать, там это более уместно.
Классно. В общем общими усилиями делаем интеграцию с elastichSeach, и внедряем codeception.
Sam, нет возможности ответить на хабре в теме про альфу Yii2. Зачем вы вообще этим троллям отвечаете и тратите свое время. Это обычные теоретики, которые просто любят сидеть и писать и писать всякую чушь. Не нравятся Yii - пусть не используют (никто не заставляет).
Сейчас ищу уже давно работу, много где бывают на собеседованиях, много где общаюсь online. Могу сказать одно: Yii намного популярнее других фреймворков, он очень набирает обороты. Вы сделал качественный продукт, который позволил разрабатывать и большие и малые приложения быстро и расширяемо.
Yii2 просто бомба, очень круто. Единственно, он все таки труднее для освоения, чем первая версия, но это не минус и не плюс.
Сегодня пришел сборник рецептов по Yii. Планируется ли книга по Yii2? Если да, то когда? Спасибо
Если и будет, то после релиза Yii2.
Слушай, такой вопрос, была отдельная ветка по редису, вы её вынесли как расширение, в само ядро не стали его включать наряду с мемкешом? Вопрос два, как я понимаю, Yii начинает более-менее стабилизироваться, насколько сильные возможны изменения архитектуры или уже больше будет подпиливание? Можно начать переносить расширения с первой ветки на вторую? Работаем с PHPMailer, Gearman, phpThumbOf.
А AR во 2-м еще больше не IDE-friendly, чем в 1-м? Если в 1-м можно было в find() сказать @return $this, то во 2-м find() возвращает ActiveQuery... =(
Дмитрий, для поддержки автокомплита я придумал такой хак. Допустим есть модель User, создаем класс UserQuery extends ActiveQuery. В этом классе описываем варианты филтров и сортировок
В модели User переопределяем методы createQuery и find:
Теперь идешка будет поддерживать автокомплит конструкций
Но такие фильтры, к сожалению, не будут работать с ActiveRelation.
Как по мне так хак - совсем не хак, а решение которое приходит на ум первым. Но оно плохо тем, что вы сломали дизайн. Скопы - это методы модели в yii2, а вы их вынесли в отдельный класс и поменяли интерфейс скопов.
Вообще проблема yii2 скопов - в том что они в интерфейсе и в определении имеют разное количество параметров. Т.е. я не могу взять и переопределить find() и в phpDoc написать, что он может возвращать мою конкретную модель, потому-что IDE взбесится и скажет что я передаю одно количество параметров, а в определении скопа написано другое.
Алексей, именно потому что это выбивается из принятого фреймворком дизайна, я назвал это хаком. Интересно, чем обусловлено такое построение скопов? Почему задействовано так много магии.
Это не хак, это бред - создавать на каждую модель доп. файл только ради автокомплита =( Мне кажется эта очень странная попытка - прыгнуть одной ногой на AR, а другой на датамапер.
Алексей - можете просто в том самом UserQuery описать скопы руками через @method. Только все-равно это бред.
Видимо просто нужно начать воспринимать Query как Finder и создавать действительно отдельный класс на каждую модель. Тогда скоупы нужно унести в этот класс - им там место.
Алексей, к слову, скоупы скорее всего не будут в IDE мешаться, ибо в определении они статика, а в интерфейсе - методы объекта. IDE по идее не должно путать.
Александр, в yii1 был класс CViewAction, в yii2 что-то не нашел аналога. его теперь не будет?
Витя, наверное, нет.
Привет всем. Александр, у меня вопрос по-поводу локализации. Перевод сообщений не проблема, все работает. Но вот как побороть точку в числовых значениях не пойму. В "русском языке" привычно использовать запятую для чисел. В форме при проверке такое не прокатывает. В валидаторе жестко вставлена строка:
Заменить точку конечно можно, но велосипед не хочется. Как это можно правильно настроить без костылей? И вобще подобные ситуации...
Прошу прощения, что не совсем по теме. Сделал пока так: В файл конфига добавил:
Может кому-нибудь пригодиться :)