Doctrine:使用Annotations验证模型数据

时间:2014-03-06 10:08:48

标签: validation model doctrine

在学说中,有没有办法可以使用注释验证模型数据?就像c#

中的轰鸣声示例一样
       public class ProductMD {
            [StringLength(50),Required]
            public object Name { get; set; }
            [StringLength(15)]
            public object Color { get; set; }
            [Range(0, 9999)]
            public object Weight { get; set; }
        }

因此当属性Name为空时,它会给你错误。

1 个答案:

答案 0 :(得分:1)

不幸的是,从Doctrine2 there is no validation component integrated into the ORM itself anymore开始。

例如,如果您将Doctrine2与Symfony2一起使用,则可以通过在Doctrine实体中使用@Assert注释来利用validation框架组件。

如果您不使用任何框架,或者您使用的框架未提供验证组件,您始终可以使用Doctrine的生命周期回调在@PrePersist@PreUpdate中提供自定义验证(对于更多信息,看看here)。在这种情况下,还有更多的手动工作要做,但它听起来仍然是一个合理的解决方案。