Symfony 2 — путь к шаблону

Я понятия не имею, почему мой путь к шаблону не работает. Я слышал, что все в порядке и должно работать, но это не так.

..\ Проект \ SRC \ Application \ соната \ AdminBundle \ Resources \ вид \ CRUD \ list_image.html.twig

->add('photo', null, array('template' => 'ApplicationSonataAdminBundle:CRUD:list_image.html.twig'))

Но когда я пытаюсь запустить проект, я получаю эту ошибку из журнала:

[2014-10-15 10:28:59] app.WARNING: Произошла ошибка при попытке загрузить шаблон «ApplicationSonataAdminBundle: CRUD: list_image.html.twig» для поля «photo», шаблон по умолчанию «SonataAdminBundle: CRUD: Вместо этого использовалось base_list_field.html.twig: «Невозможно найти шаблон» ApplicationSonataAdminBundle: CRUD: list_image.html.twig «.». [] []

Для меня этот путь в порядке. Я понятия не имею, почему это не работает.

Опечатки нет, потому что путь был скопирован, и я много раз искал опечатку.

Пожалуйста помоги!

0

Решение

Большое спасибо за пользователя Nic. Он взял меня на хороший способ найти решение этой проблемы.

Сначала определите новый файл: ApplicationSonataAdminBundle.php в .. \ project \ src \ Application \ Sonata \ AdminBundle \

затем в файле:

namespace Application\Sonata\AdminBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;class ApplicationSonataAdminBundle extends Bundle
{
public function getParent()
{
return 'SonataAdminBundle';
}
}

и затем, как сказал Nic, нам нужно зарегистрировать наш пакет в app / AppKernel.php:

new Application\Sonata\AdminBundle\ApplicationSonataAdminBundle(),

Спасибо ребята за посты и помощь!

0

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

Вы не можете заставить загрузчик Twig найти ваш шаблон из-за очень сложной структуры каталогов.

Я рекомендую вам опустить некоторые дополнительные папки, такие как Application или Sonata (или обе). Также не стоит называть ваши пакеты именами популярных пакетов.

Для переопределения сторонних пакетов вам не нужно иметь папку Sonata в пространстве имен вашего Продавца. Вам просто нужно установить getParent() на вашем пакете, чтобы указать на пакет, который вы переопределяете.

Взгляни на Лучшие практики Symfony

0

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