繁体   English   中英

Symfony2日期验证失败

[英]Symfony2 date validation fails

我有一个看起来像这样的表单类型:

/**
 * {@inheritdoc}
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('birthdate', 'date'));
}

我的验证人:

Foo\BarBundle\Model\User\Profile:
    properties:
        birthdate:
            - NotNull:
                message : label.null
            - Date:
                message: user.profile.birthdate.invalid

我的请求以及请求正文数据:

输入foo.dev/user/profile

{ 
    "user_profile" : { 
        "sex" : 0,
        "birthdate" : {
            "year"  : 1983,
            "month" : 6,
            "day"   : 23
        },
        "height" : 180,
        "weight" : 78,
        "pal"    : 1.2
    }
}

这给了我400:

{
    "code":400,
    "message":"Validation Failed",
    "errors":{
    "children":{
        "birthdate":{
            "errors":[
                "This value is not valid."
            ],
            "children":{
                "year":[],
                "month":[],
                "day":[]
            }
        },
    }
}

同样的情况,如果我使用这个:

输入foo.dev/user/profile

{ 
    "user_profile" : { 
        "sex" : 0,
        "birthdate" : "2014-01-01",
        "height" : 180,
        "weight" : 78,
        "pal"    : 1.2
    }
}

我做错了什么? 请帮助:'(

更新:

如果我使用widget => single_text ,则在添加表单字段时,我可以成功地请求这个端点的birthdate1974-05-06 ,但是我希望能够发送更多的仅一种格式:

  • 日期时间对象
  • 时间戳记
  • YYYY-MM-DD
  • 数组

更新2如果我使用小部件=>文本,我可以按预期方式发送三个子表单字段。 但是我不能将这些值作为字符串发送。

不过...。我将关闭它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM