не удалось найти шаблон, после генерации пакета

Хорошо, это может быть очень странная вещь.
это не первый раз, когда я работаю над проектом Symfony, но:

Я использовал команду Symfony generate: bundle и после этого создал пакет. Давайте назовем это «CrimeBundle».

Я видел, что он сделал папку внутри src /

Он также автоматически создал DefaultController и файл index.html.twig.

Теперь, когда я использую:

return $this->render('CrimeBundle:Default:index.html.twig');

это не работает: я получаю ошибку:

Невозможно найти шаблон «CrimeBundle: по умолчанию: index.html.twig» (просматривал: / Users / admin / sites / solve / app / Resources / views, / Users / admin / sites / solve / vendor / symfony / symfony / src / Symfony / мост / Twig / Ресурсы / мнение / форма).

однако это работает всякий раз, когда я использую путь к ветке пространства имен, например:

return $this->render('@Crime/Default/index.html.twig');

Мне нравится первый вариант, потому что в других моих проектах я тоже его использую. Ни одна из них не является той же версией, в настоящее время я использую: 3.4.1
Снова файл там, потому что он работает с пространственными путями с именами.

Я не могу понять почему return $this->render('CrimeBundle:Default:index.html.twig'); не будет работать, поскольку Symfony сгенерировал этот код.

6

Решение

Согласно этому — https://symfony.com/doc/3.4/templating.html#referencing-templates-in-a-bundle
Это единственный тип ссылки, поддержка шаблонов пакетов

@BundleName/directory/filename.html.twig

Если вы перейдете к документации для Symfony 3.1, вы увидите, что это была последняя версия, которая поддерживала старую ссылку

AcmeBlogBundle:Blog:index.html.twig
5

Другие решения

Может быть, вы можете создать запрос на извлечение для этого файла
SensioGeneratorBundle / пучок / DefaultController.php.twig

0

По вопросам рекламы [email protected]