@@ -138,33 +138,33 @@ The default implementation of the ``integer_widget`` fragment looks like this:
138
138
{# form_div_layout.html.twig #}
139
139
{% block integer_widget %}
140
140
{% set type = type|default('number') %}
141
- {{ block('field_widget ') }}
141
+ {{ block('form_widget_simple ') }}
142
142
{% endblock integer_widget %}
143
143
144
144
.. code-block :: html+php
145
145
146
146
<!-- integer_widget.html.php -->
147
- <?php echo $view['form']->renderBlock('field_widget ', array('type' => isset($type) ? $type : "number")) ?>
147
+ <?php echo $view['form']->block($form, 'form_widget_simple ', array('type' => isset($type) ? $type : "number")) ?>
148
148
149
- As you can see, this fragment itself renders another fragment - ``field_widget ``:
149
+ As you can see, this fragment itself renders another fragment - ``form_widget_simple ``:
150
150
151
151
.. configuration-block ::
152
152
153
153
.. code-block :: html+jinja
154
154
155
155
{# form_div_layout.html.twig #}
156
- {% block field_widget %}
156
+ {% block form_widget_simple %}
157
157
{% set type = type|default('text') %}
158
- <input type="{{ type }}" {{ block('widget_attributes') }} value="{{ value }}" />
159
- {% endblock field_widget %}
158
+ <input type="{{ type }}" {{ block('widget_attributes') }} {% if value is not empty %}value ="{{ value }}" {% endif %} />
159
+ {% endblock form_widget_simple %}
160
160
161
161
.. code-block :: html+php
162
162
163
- <!-- FrameworkBundle/Resources/views/Form/field_widget .html.php -->
163
+ <!-- FrameworkBundle/Resources/views/Form/form_widget_simple .html.php -->
164
164
<input
165
- type="<?php echo isset($type) ? $view->escape($type) : " text" ?>"
166
- value="<?php echo $view->escape($value) ?>"
167
- <?php echo $view['form']->renderBlock('attributes ') ?>
165
+ type="<?php echo isset($type) ? $view->escape($type) : ' text' ?>"
166
+ <?php if (!empty($ value)): ?>value ="<?php echo $view->escape($value) ?>"<?php endif ?>
167
+ <?php echo $view['form']->block($form, 'widget_attributes ') ?>
168
168
/>
169
169
170
170
The point is, the fragments dictate the HTML output of each part of a form. To
@@ -242,7 +242,7 @@ directly in the template that's actually rendering the form.
242
242
{% block integer_widget %}
243
243
<div class="integer_widget">
244
244
{% set type = type|default('number') %}
245
- {{ block('field_widget ') }}
245
+ {{ block('form_widget_simple ') }}
246
246
</div>
247
247
{% endblock %}
248
248
@@ -278,7 +278,7 @@ can now re-use the form customization across many templates:
278
278
{% block integer_widget %}
279
279
<div class="integer_widget">
280
280
{% set type = type|default('number') %}
281
- {{ block('field_widget ') }}
281
+ {{ block('form_widget_simple ') }}
282
282
</div>
283
283
{% endblock %}
284
284
@@ -314,7 +314,7 @@ file in order to customize the ``integer_widget`` fragment.
314
314
315
315
<!-- src/Acme/DemoBundle/Resources/views/Form/integer_widget.html.php -->
316
316
<div class="integer_widget">
317
- <?php echo $view['form']->renderBlock('field_widget ', array('type' => isset($type) ? $type : "number")) ?>
317
+ <?php echo $view['form']->block($form, 'form_widget_simple ', array('type' => isset($type) ? $type : "number")) ?>
318
318
</div>
319
319
320
320
Now that you've created the customized form template, you need to tell Symfony
@@ -594,7 +594,7 @@ which part of the field is being customized. For example:
594
594
595
595
{% block _product_name_widget %}
596
596
<div class="text_widget">
597
- {{ block('field_widget ') }}
597
+ {{ block('form_widget_simple ') }}
598
598
</div>
599
599
{% endblock %}
600
600
@@ -610,7 +610,7 @@ which part of the field is being customized. For example:
610
610
<!-- src/Acme/DemoBundle/Resources/views/Form/_product_name_widget.html.php -->
611
611
612
612
<div class="text_widget">
613
- echo $view['form']->renderBlock('field_widget ') ?>
613
+ echo $view['form']->renderBlock('form_widget_simple ') ?>
614
614
</div>
615
615
616
616
Here, the ``_product_name_widget `` fragment defines the template to use for the
@@ -848,10 +848,10 @@ form, modify the ``use`` tag and add the following:
848
848
849
849
.. code-block :: html+jinja
850
850
851
- {% use 'form_div_layout.html.twig' with field_widget as base_field_widget %}
851
+ {% use 'form_div_layout.html.twig' with form_widget_simple as base_form_widget_simple %}
852
852
853
- {% block field_widget %}
854
- {{ block('base_field_widget ') }}
853
+ {% block form_widget_simple %}
854
+ {{ block('base_form_widget_simple ') }}
855
855
856
856
{% if help is defined %}
857
857
<span class="help">{{ help }}</span>
@@ -865,7 +865,7 @@ the following:
865
865
866
866
{% extends 'form_div_layout.html.twig' %}
867
867
868
- {% block field_widget %}
868
+ {% block form_widget_simple %}
869
869
{{ parent() }}
870
870
871
871
{% if help is defined %}
@@ -878,13 +878,13 @@ original template:
878
878
879
879
.. code-block :: html+php
880
880
881
- <!-- field_widget .html.php -->
881
+ <!-- form_widget_simple .html.php -->
882
882
883
883
<!-- Original content -->
884
884
<input
885
- type="<?php echo isset($type) ? $view->escape($type) : " text" ?>"
886
- value="<?php echo $view->escape($value) ?>"
887
- <?php echo $view['form']->renderBlock('attributes ') ?>
885
+ type="<?php echo isset($type) ? $view->escape($type) : ' text' ?>"
886
+ <?php if (!empty($ value)): ?>value ="<?php echo $view->escape($value) ?>"<?php endif ?>
887
+ <?php echo $view['form']->block($form, 'widget_attributes ') ?>
888
888
/>
889
889
890
890
<!-- Customization -->
0 commit comments