瀏覽代碼

[Form] Fixed: set data is treated as string except if a transformer is set

Bernhard Schussek 14 年之前
父節點
當前提交
4ec6ba8674
共有 1 個文件被更改,包括 3 次插入6 次删除
  1. 3 6
      src/Symfony/Component/Form/Form.php

+ 3 - 6
src/Symfony/Component/Form/Form.php

@@ -255,12 +255,9 @@ class Form implements \IteratorAggregate, FormInterface
         $this->dispatcher->dispatch(Events::filterSetData, $event);
         $appData = $event->getData();
 
-        // Fix data if empty
-        if (!$this->clientTransformer) {
-            // Treat data as strings unless a value transformer exists
-            if (is_scalar($appData)) {
-                $appData = (string)$appData;
-            }
+        // Treat data as strings unless a value transformer exists
+        if (!$this->clientTransformer && !$this->normTransformer && is_scalar($appData)) {
+            $appData = (string)$appData;
         }
 
         // Synchronize representations - must not change the content!