diff --git a/UPDATE.md b/UPDATE.md
index 7dd475183fb1..a2dca35ccee2 100644
--- a/UPDATE.md
+++ b/UPDATE.md
@@ -167,6 +167,9 @@ beta1 to beta2
* Form: Renamed option value "text" of "widget" option of the "date" type was
renamed to "single-text". "text" indicates to use separate text boxes now
(like for the "time" type).
+
+* Form: Renamed view variable "name" to "full_name". The variable "name" now
+ contains the local, short name (equivalent to $form->getName()).
PR12 to beta1
-------------
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/checkbox_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/checkbox_widget.html.php
index cc7cdc3d233d..6e97a4e0214e 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/checkbox_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/checkbox_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget.html.php
index f047c2634c42..999ac4313fa0 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget.html.php
@@ -8,7 +8,7 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
disabled="disabled"
multiple="multiple"
>
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/date_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/date_widget.html.php
index 583c881e3f50..3b606d6a38e3 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/date_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/date_widget.html.php
@@ -1,7 +1,7 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/email_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/email_widget.html.php
index edda95dc2c57..02e5301570e2 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/email_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/email_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
maxlength="escape($max_length) ?>"
disabled="disabled"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/field_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/field_widget.html.php
index d6f5d9f55643..ac15321413da 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/field_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/field_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/hidden_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/hidden_widget.html.php
index 16f5082fc778..4bc2154f101d 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/hidden_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/hidden_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
/>
\ No newline at end of file
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/integer_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/integer_widget.html.php
index 26d871285e99..96810cba485b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/integer_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/integer_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/number_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/number_widget.html.php
index a605569d4d36..fa8223e0da92 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/number_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/number_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/password_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/password_widget.html.php
index 37f1318852b4..e9562046d992 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/password_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/password_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/radio_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/radio_widget.html.php
index a697ec25a07d..5836d87c64bb 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/radio_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/radio_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/text_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/text_widget.html.php
index a605569d4d36..fa8223e0da92 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/text_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/text_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/textarea_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/textarea_widget.html.php
index 3eb9062e9409..bf4f8a4e9b0a 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/textarea_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/textarea_widget.html.php
@@ -1,6 +1,6 @@
diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/url_widget.html.php b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/url_widget.html.php
index 3b3829bc294b..f8280984e331 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/url_widget.html.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/url_widget.html.php
@@ -1,6 +1,6 @@
attributes() ?>
- name="escape($name) ?>"
+ name="escape($full_name) ?>"
value="escape($value) ?>"
disabled="disabled"
required="required"
diff --git a/src/Symfony/Bundle/TwigBundle/Resources/views/Form/div_layout.html.twig b/src/Symfony/Bundle/TwigBundle/Resources/views/Form/div_layout.html.twig
index 0a12ad71aff0..8675c0d79e55 100644
--- a/src/Symfony/Bundle/TwigBundle/Resources/views/Form/div_layout.html.twig
+++ b/src/Symfony/Bundle/TwigBundle/Resources/views/Form/div_layout.html.twig
@@ -43,7 +43,7 @@
{% block attributes %}
{% spaceless %}
- id="{{ id }}" name="{{ name }}"{% if read_only %} disabled="disabled"{% endif %}{% if required %} required="required"{% endif %}{% if max_length %} maxlength="{{ max_length }}"{% endif %}
+ id="{{ id }}" name="{{ full_name }}"{% if read_only %} disabled="disabled"{% endif %}{% if required %} required="required"{% endif %}{% if max_length %} maxlength="{{ max_length }}"{% endif %}
{% for attrname,attrvalue in attr %}{{attrname}}="{{attrvalue}}" {% endfor %}
{% endspaceless %}
{% endblock attributes %}
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
index 285a04145598..df53a0506c00 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
@@ -106,7 +106,7 @@ public function buildView(FormView $view, FormInterface $form)
// Add "[]" to the name in case a select tag with multiple options is
// displayed. Otherwise only one of the selected options is sent in the
// POST request.
- $view->set('name', $view->get('name').'[]');
+ $view->set('full_name', $view->get('full_name').'[]');
}
}
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/FieldType.php b/src/Symfony/Component/Form/Extension/Core/Type/FieldType.php
index ded5131fdfee..04fee2866f5f 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/FieldType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/FieldType.php
@@ -58,7 +58,7 @@ public function buildView(FormView $view, FormInterface $form)
{
if ($view->hasParent()) {
$parentId = $view->getParent()->get('id');
- $parentName = $view->getParent()->get('name');
+ $parentName = $view->getParent()->get('full_name');
$id = sprintf('%s_%s', $parentId, $form->getName());
$name = sprintf('%s[%s]', $parentName, $form->getName());
} else {
@@ -69,7 +69,8 @@ public function buildView(FormView $view, FormInterface $form)
$view
->set('form', $view)
->set('id', $id)
- ->set('name', $name)
+ ->set('name', $form->getName())
+ ->set('full_name', $name)
->set('errors', $form->getErrors())
->set('value', $form->getClientData())
->set('read_only', $form->isReadOnly())
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/RadioType.php b/src/Symfony/Component/Form/Extension/Core/Type/RadioType.php
index dbb19578572b..7b8549aa489e 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/RadioType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/RadioType.php
@@ -35,7 +35,7 @@ public function buildView(FormView $view, FormInterface $form)
;
if ($view->hasParent()) {
- $view->set('name', $view->getParent()->get('name'));
+ $view->set('full_name', $view->getParent()->get('full_name'));
}
}
diff --git a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/ChoiceTypeTest.php b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/ChoiceTypeTest.php
index 2fd1355c97de..d119045e8b22 100644
--- a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/ChoiceTypeTest.php
+++ b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/ChoiceTypeTest.php
@@ -312,7 +312,7 @@ public function testPassPreferredChoicesToView()
$this->assertSame(array('b' => 'B', 'd' => 'D'), $view->get('preferred_choices'));
}
- public function testAdjustNameForMultipleNonExpanded()
+ public function testAdjustFullNameForMultipleNonExpanded()
{
$form = $this->factory->createNamed('choice', 'name', null, array(
'multiple' => true,
@@ -321,6 +321,6 @@ public function testAdjustNameForMultipleNonExpanded()
));
$view = $form->createView();
- $this->assertSame('name[]', $view->get('name'));
+ $this->assertSame('name[]', $view->get('full_name'));
}
}
diff --git a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/FieldTypeTest.php b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/FieldTypeTest.php
index 51f357098117..4218a97903db 100644
--- a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/FieldTypeTest.php
+++ b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/FieldTypeTest.php
@@ -117,6 +117,7 @@ public function testPassIdAndNameToView()
$this->assertEquals('name', $view->get('id'));
$this->assertEquals('name', $view->get('name'));
+ $this->assertEquals('name', $view->get('full_name'));
}
public function testPassIdAndNameToViewWithParent()
@@ -126,7 +127,8 @@ public function testPassIdAndNameToViewWithParent()
$view = $parent->createView();
$this->assertEquals('parent_child', $view['child']->get('id'));
- $this->assertEquals('parent[child]', $view['child']->get('name'));
+ $this->assertEquals('child', $view['child']->get('name'));
+ $this->assertEquals('parent[child]', $view['child']->get('full_name'));
}
public function testPassIdAndNameToViewWithGrandParent()
@@ -137,7 +139,8 @@ public function testPassIdAndNameToViewWithGrandParent()
$view = $parent->createView();
$this->assertEquals('parent_child_grand_child', $view['child']['grand_child']->get('id'));
- $this->assertEquals('parent[child][grand_child]', $view['child']['grand_child']->get('name'));
+ $this->assertEquals('grand_child', $view['child']['grand_child']->get('name'));
+ $this->assertEquals('parent[child][grand_child]', $view['child']['grand_child']->get('full_name'));
}
public function testPassMaxLengthToView()
diff --git a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/RadioTypeTest.php b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/RadioTypeTest.php
index b8c84490f50f..869a33b02e1e 100644
--- a/tests/Symfony/Tests/Component/Form/Extension/Core/Type/RadioTypeTest.php
+++ b/tests/Symfony/Tests/Component/Form/Extension/Core/Type/RadioTypeTest.php
@@ -21,13 +21,13 @@ public function testPassValueToView()
$this->assertEquals('foobar', $view->get('value'));
}
- public function testPassParentNameToView()
+ public function testPassParentFullNameToView()
{
$parent = $this->factory->createNamed('field', 'parent');
$parent->add($this->factory->createNamed('radio', 'child'));
$view = $parent->createView();
- $this->assertEquals('parent', $view['child']->get('name'));
+ $this->assertEquals('parent', $view['child']->get('full_name'));
}
public function testCheckedIfDataTrue()