Я использую Symfony v3.3.13 и Sonata Admin Bundle 3.27.0 с TWIG v2.4.4
У меня есть небольшая проблема с пониманием того, как работают шаблоны шаблонов. Мне недавно нужно было загрузить новый шаблон для поля просмотра списка в SonataAdminBundle
.
Я должен был определить путь следующим образом:
->add('coords', null, ['template' => 'SonataAdmin/CRUD/geography_point_list.html.twig']);
Файл geography_point_list.html.twig находился в app/Resources/views/SonatAdmin/Crud
Мне также удалось получить эту работу с помощью пути AppBundle::SonataAdmin/CRUD/geography_point_list.html.twig
. Однако тогда файл должен быть в src/AppBundle/Resources/views/SonatAdmin/Crud
Однако во всех примерах я вижу, что путь файла шаблона делится на двоеточие :
вместо косой черты /
пока я не могу получить что-то вроде AppBundle:SonataAdmin:CRUD:geography_point_list.html.twig
для работы. Я попробовал несколько вариантов, и я всегда получаю Unable to find template
. Ни одно из следующих не было выполнено (у меня есть как в app/Resources/views/SonataAdmin/CRUD
и в src/AppBundle/Resources/views/SonataAdmin/Crud
:
->add('coords', null, ['template' => 'App:SonataAdmin:CRUD:geography_point_list.html.twig']); ->add('coords', null, ['template' => 'AppBundle:SonataAdmin:CRUD:geography_point_list.html.twig']); ->add('coords', null, ['template' => 'AppBundle:app:Resources:views:SonataAdmin:CRUD:geography_point_list.html.twig']); ->add('coords', null, ['template' => 'App::SonataAdmin:CRUD:geography_point_list.html.twig']); ->add('coords', null, ['template' => 'AppBundle::SonataAdmin:CRUD:geography_point_list.html.twig']);
ОК. Итак, у меня есть 2 вопроса:
1- Почему это не работает? Что я делаю не так? или что может отсутствовать? Потому что я вижу такие пути, как SonataAdminBundle:CRUD:list.html.twig
определен в SonataAdminBundle
и они, похоже, работают?
2- В документации по именованию и размещению документов говорится, что правильным местом для размещения шаблонов является app/Resources/views
a) AppBundle
ли хранение шаблонов в AppBundle
? б) Почему нет смысла хранить шаблоны в AppBundle
? Я не понимаю, почему каталог app
имеет config
и Resources
отдельно от AppBundle
?