2017-03-08 82 views
1

我使用symfony和fosrestBundle。symfony形式:日期無效

我嘗試更新一個實體。

我有一個字段「指明MyDate」女巫一個MySQL數據庫的日期(不是DATETIME)

當我拿到我的單位,我有這個在JSON響應:

myDate:"2010-12-20T00:00:00+01:00" 

當我更新我的實體,我發送相同的數據。

在我朋友的電腦,它的工作原理,但我的,我有這樣的錯誤:

{ 
    "code": 400, 
    "message": "Validation Failed", 
    "errors": { 
    "children": { 
     ..., 
     "myDate": { 
     "errors": [ 
      "Cette valeur n'est pas valide." 
     ] 
     } 
    } 
    } 
} 

在FormType建設者,我有這個:

->add('myDate', 'date', [ 
    'widget' => 'single_text' 
]) 

如果我deplace「日期「DateTimeType ::類,我知道它會起作用,但我想知道的是爲什麼這對我的朋友,而不是我的炒作呢?

感謝您的幫助

+0

也許symfony緩存? –

+0

緩存已清除 –

回答

1

控制器期望從窗體中獲得一個日期對象;如果你不使用變換器(更多關於Symfony變換器[這裏] [1])來將你的表單數據從字符串轉換爲Date對象,它會拋出錯誤。

你有兩個obtions:

1)採用變壓器來改變你的數據類型之前,它是由控制器

或處理:

2)在FormBuilder 「DateType」,以改變'TextType'並刪除所有Date opton(小部件')。

祝你好運