Ошибка темы формы шаблона Symfony-Twig

У меня все работает правильно и сейчас пытаюсь работать с темами форм. Это мой код для создания формы без темы.

{% extends 'base.html.twig' %}
{% block body %}
{% include 'menu/menu.html.twig' %}
{% if addpost is defined %}
    <div id='add_post_form'>
        {{ form_start(addpost) }}
        {{ form_widget(addpost) }}
        {{ form_end(addpost) }}
    </div>
{% endif %}
{% endblock %}

Но когда я добавляю тему формы со следующим кодом

{% form_theme form 'form/form_div_layout.html.twig' %}

Я получаю такую ​​ошибку:

Variable "form" does not exist

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

Unknown "form_help" function. Did you mean "form_rest", "form_end"?

form_div_layout.html.twig содержит код, найденный в Тема формы ветки github symfony

В моем config.yml я добавил в раздел twig следующее:

form_themes:
        - 'form/form_div_layout.html.twig'

.

либо нет, у меня все еще есть эта ошибка Чего не хватает ???


Моя файловая структура

Ошибка темы формы шаблона Symfony-Twig

Удалите тему из конфига. Это не обязательно, так вы сделаете эту тему глобальной, чтобы ее можно было использовать для каждой формы. Если вы не хотите этого делать, то вам не нужно вызывать form_theme.

emix 19.06.2018 09:23

Переменная вашей формы - addpost.

panche14 19.06.2018 09:27

Также обратите внимание, что с {% form_theme form _self%} ошибка остается той же

Jordan Georgiadis 19.06.2018 09:28
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
3
691
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если все ваши формы будут использовать одну и ту же тему, вам нужно только добавить строку в конфигурацию, но если вам нужна конкретная тема формы в конкретном шаблоне, вы можете использовать тег шаблона.

Причина, по которой вы получаете сообщение об ошибке «форма не определена», заключается в том, что у вас нет переменной с именем form, переданной в шаблон, ваша переменная формы называется addpost, поэтому вам нужно использовать

{% form_theme addpost 'form/form_div_layout.html.twig' %}

Да, я понял. Очень приятно и спасибо. Но теперь я понимаю вторую ошибку. Неизвестная функция "form_help". Вы имели ввиду form_rest, form_end? Если вы можете мне помочь, пусть это будет другая история. Я даю вам поправку

Jordan Georgiadis 19.06.2018 09:31

Блок form_help должен быть определен и использоваться в файле form_div_layout. Убедитесь, что у вас действительно есть полный файл. Если вы переопределяете его, проверьте, правильно ли вы вызываете родителя.

Phil Rennie 19.06.2018 09:37

что вы имеете в виду, если я отменяю это? я просто называю это {% form_theme addpost 'form / form_div_layout.html.twig'%}. В посте у меня есть ссылка на файл веточки. Это из гитхаба. Это должно быть правильно

Jordan Georgiadis 19.06.2018 09:56

Это странно. Вероятно, стоит дважды проверить, что у вас есть весь файл form_div_layout.html.twig, на случай, если некоторые из них будут обрезаны. Если да, то это, вероятно, совершенно новый вопрос.

Phil Rennie 20.06.2018 09:15

Другие вопросы по теме