Общий вопрос (preload)

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
louisvuitton
Сообщения: 203
Зарегистрирован: 2014.02.16, 03:09

Общий вопрос (preload)

Сообщение louisvuitton »

В общем разбираюсь с yii2 понемногу, есть непонятные моменты которые гуглятся не очень удачно. Еще github роскомнадзор заблокировал (через мтс полностью(!) я в шоке!

Задача такая (как было сделано в Yii 1):
Настройки приложения хранятся в бд. Есть модуль для работы с ними.
В модуле есть класс компонент, который был прописан в preload.
В этом классе в функции init() все настройки собирались из бд (или из кеша) и клались в Yii::app()->params[]. И этими настройками можно было пользоваться как обычными параметрами приложения.

Как это сделать в Yii2 по уму..? (а именно как заставить компонент отработать в самом начале работы приложения)
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Общий вопрос (preload)

Сообщение zelenin »

создать Bootstrap.php, прописать его в бутстрап (теперь это вместо preload).
louisvuitton
Сообщения: 203
Зарегистрирован: 2014.02.16, 03:09

Re: Общий вопрос (preload)

Сообщение 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
{
    ...
}
Правильно?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Общий вопрос (preload)

Сообщение zelenin »

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
{
    ...
} 
Правильно?
прочитайте про неймспейсы на php.net - это не фишка yii.
louisvuitton
Сообщения: 203
Зарегистрирован: 2014.02.16, 03:09

Re: Общий вопрос (preload)

Сообщение louisvuitton »

zelenin писал(а):это не фишка yii.
Я знаю. Но впервые сталкиваюсь с namespace'ами здесь в Yii.
И хотел убедиться, что правильно понял, как они используются.
Ответить