- PVSM.RU - https://www.pvsm.ru -

Нам очень приятно объявить о выходе версии 2.0.1 PHP фреймворка Yii. Подробнее о том, как установить эту версию или обновиться на неё читайте на странице http://www.yiiframework.com/download/ [1].
Версия 2.0.1 — патч-релиз ветки 2.0, содержащий около 90 небольших улучшений и исправлений. Полный список изменений можно почитать на GitHub [2]. Кроме улучшений самого кода была проделана значительная работа по документации. Особенно по полному руководству по Yii 2.0 [3], переводимому на множество языков. Спасибо всем, кто подарил нам часть своего драгоценного времени [4] улучшая Yii.
За разработкой фреймворка можно следить, поставив звёздочку или нажав watch на странице проекта на GitHub [5]. Также можно подписаться на Twitter [6] и присоединиться к группе в Facebook [7].
Далее будут рассмотрены самые важные изменения.
Через asset bundle можно конвертировать ресурсы автоматически. Например, LESS в CSS. Тем не менее, отслеживать все изменения в исходных файлах довольно затратно. Особенно когда сделан импорт одного ресурса в другом. В подобных случаях можно конвертировать ресурсы принудительно. Для этого компонент assetManager настраивается следующим образом:
[
'components' => [
'assetManager' => [
'converter' => [
'forceConversion' => true,
]
]
]
];
Построитель запросов поддерживает подзапросы во многих местах. Теперь и в SELECT:
$subQuery = (new Query)->select('COUNT(*)')->from('user');
$query = (new Query)->select(['id', 'count' => $subQuery])->from('post');
// $query represents the following SQL:
// SELECT `id`, (SELECT COUNT(*) FROM `user`) AS `count` FROM `post`
В Yii уже были средства для предотвращения повторной загрузки JavaScript при AJAX запросах. Теперь есть и для CSS. Для использования данной возможности требуется регистрация YiiAsset как показано ниже:
yiiwebYiiAsset::register($view);
Мы добавили новую команду для очистки кеша схемы базы данных. Она будет полезна для выкладывания кода на рабочие серверы. Команда запускается следующим образом:
yii cache/flush-schema
Метод Html::cssFile() теперь поддерживает опцию noscript, предназначенную для оборачивания генерируемого тега link в тег noscript. Данную опцию также можно использовать при настройке AssetBundle::cssOptions. К примеру:
use yiihelpersHtml;
echo Html::cssFile('/css/jquery.fileupload-noscript.css', ['noscript' => true]);
Ранее StringHelper::truncate() поддерживал обрезку простой строки до заданного количества символов или слов. Теперь поддерживается и HTML, который при обрезке остаётся полностью валидным.
Класс Inflector обзавёлся новым методом sentence(), собирающим массив слов в предложение. Например:
use yiihelpersInflector;
$words = ['Spain', 'France'];
echo Inflector::sentence($words);
// output: Spain and France
$words = ['Spain', 'France', 'Italy'];
echo Inflector::sentence($words);
// output: Spain, France and Italy
$words = ['Spain', 'France', 'Italy'];
echo Inflector::sentence($words, ' & ');
// output: Spain, France & Italy
CSS фреймворк Bootstrap обновлён до версии 3.3.x. Если вы хотите использовать старую версию, можете указать её явно в composer.json проекта.
В виджеты Bootstrap добавлены новые свойства, подробно описанные в документации по API [8].
yiibootstrapButtonDropdown::$containerOptions.yiibootstrapModal::$headerOptions.yiibootstrapModal::$footerOptions.yiibootstrapTabs::renderTabContent.yiibootstrapButtonDropdown::$containerOptions.Операция findAndModify теперь поддерживается как yiimongodbQuery, так и yiimongodbActiveQuery. К примеру:
User::find()->where(['status' => 'new'])->modify(['status' => 'processing']);
Запросы к MongoDB теперь отображаются на отладочной панели. Чтобы её использовать следуют настроить отладчик следующим образом:
[
'class' => 'yiidebugModule',
'panels' => [
'mongodb' => [
'class' => 'yiimongodbdebugMongoDbPanel',
]
],
]
Расширение Redis теперь поддерживает работу через сокеты UNIX, что часто на 50% быстрее работы через TCP. Соединение настраивается следующим образом:
[
'class' => 'yiiredisConnection',
'unixSocket' => '/var/run/redis/redis.sock',
]
Автор: SamDark
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/framework/76577
Ссылки в тексте:
[1] http://www.yiiframework.com/download/: http://www.yiiframework.com/download/
[2] можно почитать на GitHub: https://github.com/yiisoft/yii2/blob/2.0.1/framework/CHANGELOG.md
[3] полному руководству по Yii 2.0: http://www.yiiframework.com/doc-2.0/guide-index.html
[4] кто подарил нам часть своего драгоценного времени: https://github.com/yiisoft/yii2/graphs/contributors
[5] на странице проекта на GitHub: https://github.com/yiisoft/yii2
[6] подписаться на Twitter: https://twitter.com/yiiframework
[7] присоединиться к группе в Facebook: https://www.facebook.com/groups/yiitalk/
[8] документации по API: http://www.yiiframework.com/doc-2.0/ext-bootstrap-index.html
[9] Источник: http://habrahabr.ru/post/245227/
Нажмите здесь для печати.