vitaly_74
@vitaly_74

Почему Yii2 не видит виджет, и как это исправить?

Добрый день, учусь с виджетами разбираться в версии advanced. хочу все свои виджеты держать в папке frontend/widgets (для меня это удобней и кажется логичней). Вот я создал виджет со своими вьюхами 5c86582c1e973699037425.png
в контроллере прописал:
<?php
namespace app\MyWidget;
use yii\base\Widget;
class breadcrumb extends Widget {
    public function run(){
        return "hello World";
    }
}

в шаблоне прописал
use app\MyWidget;
MyWidget\breadcrumb::widget();

и вылетает ошибка мол yii2 не может найти данный класс
Class 'app\MyWidget\breadcrumb' not found

Вопрос как правильно подключать виджеты из данной папки?
и как подключить правильно вьюху виджета?
пожалуйста, не пишите что мол это не практично, или не правильно так файлы раскидывать (для вас не практично для меня удобно). спасибо.
  • Вопрос задан
  • 495 просмотров
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
откуда взялось app если это advanced, а не basiс? Откуда взялось MyWidget? Собственно ошибка Вам о том и говорит, что не понимает откуда взялось 'app\MyWidget' и чего Вы решили, что оно должно находиться.
Я так понимаю вместо namespace app\MyWidget; надо бы namespace frontend/widgets/breadcrumb;
Еще я не совсем понимаю что у Вас в виджете делает контроллер и модель? Вы точно не путаете виджет и модуль?
И очень большая просьба, названия классов с большой буквы. Смотрите как разрабы yii трудились жали shift до боли в мизинце (Widget), а Вы ленитесь (breadcrumb)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы