Автор Тема: Override form template  (Прочитано 1052 раз)

0 Пользователей и 1 Гость смотрят эту тему.

Оффлайн frm

  • Завсегдатай
  • **
  • Сообщений: 55
  • Карма: 1
Override form template
« : Февраль 02, 2016, 10:53:09 »
Доброго времени суток.
Symfony 2.8
Пытаюсь переопределить некоторые блоки темы bootstrap для форм. В частности интересует блок "form_label_class" в теме "bootstrap_3_horizontal_layout.html.twig":


{% block form_label_class -%}
col-sm-2
{%- endblock form_label_class %}


Для этого создал файл my_form.html.twig и унаследовался в нем от "bootstrap_3_horizontal_layout.html.twig":


{% use "bootstrap_3_horizontal_layout.html.twig" %}
{% 
block form_start -%}
...
{% 
endblock form_start -%}

{% 
block form_label_class -%}
    {{ 
width_test }}
{%- 
endblock form_label_class %}


Также добавил определение "width_test" в класс формы:


....
public function 
buildView(FormView $viewFormInterface $form, array $options)
    {
        
$view->vars['width_test'] = $options['width_test'];
    }

public function 
configureOptions(OptionsResolver $resolver)
    {
        
$resolver->setDefault('width_test'3);
    }


Проблема: в результате получаю ошибку:

Variable "width_test" does not exist in form/my_form.html.twig


Причем важно отметить, что "width_test" не определена именно в блоке "form_label_class", но без проблем отображается например в блоке "form_start".
В чем может быть дело? Все копья сломал уже.