我正在用Symfony和FOS Rest軟件包開發REST API。我的一個實體有一個日期字段。我也在用behat進行測試,我的問題是當我嘗試測試此操作的後操作時,由於Datetime字段的驗證,我總是得到400錯誤。 這裏的字段定義:Symfony Form中的DatetimeType:驗證手動發送POST請求的錯誤
->add(
'scheduledAt', DateTimeType::class, [
'label' => 'fields.scheduled_at',
'required' => false,
'format' => 'Y-m-d h:i'
])
而這裏的貝哈特測試:
When I send a POST request to "/api/cases/1/actions" with body:
"""
{
"comments": "Comments 3",
"action": 1,
"scheduledAt": "2017-01-01 17:00:00"
}
"""
這總是帶400響應
{
"code":400,
"message":"Validation Failed",
"errors":{"children":{"comments":[],"scheduledAt":{"errors":["This value is not valid."],"children":{"date":{"children":{"year":[],"month":[],"day":[]}},"time":{"children":{"hour":[],"minute":[]}}}},"action":[]}}}
如果您提交數據'scheduledAt'是一個單一的文本,添加該字段,選項'當widget'必須是'single_text'。 http://symfony.com/doc/current/reference/forms/types/datetime.html#widget –
我做到了,但相同的結果@PigBall – petekaner
請與我們分享行動方法機構。 –