0

我最近开始使用 symfony2 和推进一个项目。这不是一帆风顺的,但它会顺利进行。

几天前,我被表单验证卡住了。我的 validation.yml 定义如下:

Project\MainBundle\Model\User:
    properties:
        first_name:
            - NotBlank: { message: "Please add the user's first name." }
        last_name:
            - NotBlank: { message: "Please add the user's last name." }
        email: 
            - NotBlank: { message: "Please add the user's email address." }
            - Email: { message: "Please use a valid email address." }
        password: 
            - NotBlank: { message: "Please add the user's email address." }

当我提交表单时,一切正常,除了表单提交时包含空白的 first_name 和 last_name。我在调试后发现,问题不在于验证,而在于两个字段的错误呈现。密码和电子邮件错误呈现正常。这是我设置表单的方式。

    $builder->add('firstName', 'text');
    $builder->add('lastName', 'text');
    $builder->add('email', 'text');
    $builder->add('password', 'password');

我可以更改我在表单构建器上命名我的字段的方式,但同时我想遵循 symfony2 的命名约定(并且我的数据库命名约定保持不变),所以我选择这个作为最后的手段。

我希望我清楚地解释了我的问题。任何人都可以为我提供解决方法吗?

4

2 回答 2

1

您可以通过 getter 进行验证。 http://symfony.com/doc/current/validation.html#getters

Project\MainBundle\Model\User:
    getter:
        firstName:
            - NotBlank: { message: "Please add the user's first name." }
        lastName:
            - NotBlank: { message: "Please add the user's last name." }
        email: 
            - NotBlank: { message: "Please add the user's email address." }
            - Email: { message: "Please use a valid email address." }
        password: 
            - NotBlank: { message: "Please add the user's email address." }
于 2017-03-10T03:56:54.753 回答
0

您的问题可能来自您似乎不尊重 YAML 语法这一事实。

Project\MainBundle\Model\User:
    properties:
        first_name:
            - NotBlank: { message: Please add the user's first name. }
        last_name:
            - NotBlank: { message: "Please add the user's last name. }
        email: 
            - NotBlank: { message: Please add the user's email address. }
            - Email: { message: Please use a valid email address. }
        password: 
            - NotBlank: { message: Please add the user's email address.}

可以参考:http ://symfony.com/doc/current/book/validation.html

于 2013-02-09T01:33:38.683 回答