Slavenin999
@Slavenin999
программист php/erlang/elixir/js

Как переопределить шаблон 'show' в новой версии sonata admin?

Всем доброго времени суток! После какого-то из обновлений сонаты перестало работать переопределение шаблона для отображения информации. Поиски выявили, что корень проблемы находится в выделении необходимого блока в отдельный файл (SonataAdminBundle:CRUD:base_show_macro.html.twig) с последующим импортом содержимого в переменную show_helper. Раньше я просто делал так:
{% extends 'SonataAdminBundle:CRUD:base_show.html.twig' %}
{% block show_field %}контент{% endblock %}

теперь такой вариант не работает. Подскажите как переопределить блок внутри переменной?

PS: переопределение нужно только для одной сущности, поэтому глобальное не подходит.
  • Вопрос задан
  • 554 просмотра
Решения вопроса 1
okwinza
@okwinza
PHP Developer
https://github.com/sonata-project/SonataAdminBundl...

Довольно странное изменение, конечно.

Резюмируя:
  1. Копируете base_show_macro.html.twig и base_show.html.twig куда-нибудь в свой бандл, для удобства их можно даже переименовать: base_show_macro_fixed.html.twig, base_show_fixed.html.twig
  2. Наследуете base_show_macro_fixed.html.twig от оригинального.
  3. Переопределяете нужные блоки в base_show_macro_fixed.html.twig
  4. В base_show_fixed.html.twig правите строчку с импортом макроса.
  5. Наследуете ваши темплейты от base_show_fixed.html.twig
  6. Профит
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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