[Решено] Как можно организовать подмену классе без смены namespace ?

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

[Решено] Как можно организовать подмену классе без смены namespace ?

Сообщение nepster »

По всему проекту как в приложении так и во фреймворке используется yii\web\NotFoundHttpException, мне нужно как-то подменить везде вызов yii\web\NotFoundHttpException и вызвать свой класс, например app\components\exception\NotFoundHttpException.

Я попробовал следать это через алиасы:

Код: Выделить всё

        '\yii\web\NotFoundHttpException' => '\app\components\exception\NotFoundHttpException',
К сожалению ничего не вышло. Есть ли способ как-то такое проделать ?
Последний раз редактировалось nepster 2016.04.02, 13:35, всего редактировалось 1 раз.
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Как можно организовать подмену классе без смены namespace ?

Сообщение ElisDN »

Пропишите в конфиге:

Код: Выделить всё

Yii::$classMap['\yii\web\NotFoundHttpException'] = dirname(__DIR__) . '/components/exception/NotFoundHttpException.php'; 
nepster
Сообщения: 838
Зарегистрирован: 2013.01.02, 03:35

Re: Как можно организовать подмену классе без смены namespace ?

Сообщение nepster »

Таки да.
Оказывается был такой вопрос: viewtopic.php?f=19&t=19107#p112275

Однако тут изрядные костыли выходят, тоесть classMap + alias + стремный namespace, но все-же работает. Если других вариантов нет, ничего не поделаешь.

Спасибо.
Ответить