В общем разбираюсь с yii2 понемногу, есть непонятные моменты которые гуглятся не очень удачно. Еще github роскомнадзор заблокировал (через мтс полностью(!) я в шоке!
Задача такая (как было сделано в Yii 1):
Настройки приложения хранятся в бд. Есть модуль для работы с ними.
В модуле есть класс компонент, который был прописан в preload.
В этом классе в функции init() все настройки собирались из бд (или из кеша) и клались в Yii::app()->params[]. И этими настройками можно было пользоваться как обычными параметрами приложения.
Как это сделать в Yii2 по уму..? (а именно как заставить компонент отработать в самом начале работы приложения)
Общий вопрос (preload)
-
- Сообщения: 203
- Зарегистрирован: 2014.02.16, 03:09
Re: Общий вопрос (preload)
создать Bootstrap.php, прописать его в бутстрап (теперь это вместо preload).
-
- Сообщения: 203
- Зарегистрирован: 2014.02.16, 03:09
Re: Общий вопрос (preload)
Спс, это сделал. Продолжаю:
Не совсем понимаю как работать с namespace.
Вот я хочу сделать собственный базовый контроллер (как было в yii1) от которого буду наследовать другие свои контроллеры.
Делаю как то так.
В папке componetns создаю Controller.php
А в других своих контроллерах писать уже так:
Правильно?
Не совсем понимаю как работать с namespace.
Вот я хочу сделать собственный базовый контроллер (как было в yii1) от которого буду наследовать другие свои контроллеры.
Делаю как то так.
В папке componetns создаю Controller.php
Код: Выделить всё
namespace app\components;
use Yii;
use yii\web\Controller as YiiController;
class Controller extends YiiController {
...
}
Код: Выделить всё
namespace app\modules\configuration\controllers;
use Yii;
use app\components\Controller;
class ConfigurationController extends Controller
{
...
}
Re: Общий вопрос (preload)
прочитайте про неймспейсы на php.net - это не фишка yii.louisvuitton писал(а):Спс, это сделал. Продолжаю:
Не совсем понимаю как работать с namespace.
Вот я хочу сделать собственный базовый контроллер (как было в yii1) от которого буду наследовать другие свои контроллеры.
Делаю как то так.
В папке componetns создаю Controller.php
А в других своих контроллерах писать уже так:Код: Выделить всё
namespace app\components; use Yii; use yii\web\Controller as YiiController; class Controller extends YiiController { ... }
Правильно?Код: Выделить всё
namespace app\modules\configuration\controllers; use Yii; use app\components\Controller; class ConfigurationController extends Controller { ... }
-
- Сообщения: 203
- Зарегистрирован: 2014.02.16, 03:09
Re: Общий вопрос (preload)
Я знаю. Но впервые сталкиваюсь с namespace'ами здесь в Yii.zelenin писал(а):это не фишка yii.
И хотел убедиться, что правильно понял, как они используются.