Если необходимо автоматически распарсить JSON переданный от клиента, то самый простой способ это воспользоваться yii\web\JsonParser
В случае, когда необходимо определить парсер только для некоторых контроллеров/экшенов, можно переопределить метод beforeAction следующим образом:
public function beforeAction($action)
{
\Yii::$app->request->parsers = [
'application/json' => 'yii\web\JsonParser',
];
return parent::beforeAction($action);
}
messages.php
'{n, plural, one{bedroom} few{bedrooms} other{bedrooms}}' => '{n, plural, one{спальня} few{спальни} other{спален}}',
view.php
<?= Yii::$app->i18n->translate(
'messages',
'{n, plural, one{bedroom} few{bedrooms} other{bedrooms}}',
['n' => $model->bedrooms_count],
Yii::$app->language
) ?>
Устали ждать пока fxp/composer-asset-plugin обновит все зависимости? Решение есть, просто начните использовать asset-packagist.
Установка очень простая, сначала добавьте в ваш composer.json
:
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
Для сохранения обратной совместимости с fxp/composer-asset-plugin в секции extra -> asset-installer-paths отредактируйте пути:
vendor/npm -> vendor/npm-asset
vendor/bower -> vendor/bower-asset
Финальным шагом задайте алиасы в конфигурации вашего приложения:
$config = [
...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
...
];
Чтобы одновременно поддерживать проекты и с fxp/composer-asset-plugin и с hiqdev/asset-packagist не удаляя глобально fxp/composer-asset-plugin используйте опцию --no-plugins
при выполнении команды update/install
Известные проблемы: Первую установку всё же придется провести используя плагин fxp/composer-asset-plugin, т.к. файл vendor/yiisoft/extensions.php не будет создан без плагина. В этом случае перестанут работать алиасы, можно пофиксить указывая путь относительно алиаса @vendor.