我有一个复杂的表单,其中有很多字段,它是由其他开发人员创建的。提交表单时,会出现非常常见的错误
该值不能为空。
我需要找出它的值是多少。我知道实体映射和"nullable=false"属性,我真正需要的是,最佳实践/技术或只是一个解决方案,找出这个缺失的值是什么。这是一个复杂的表单,如果有不同的路径,而不是通过实体和添加到它的所有子字段,我将非常感激。
我很确定Symfony开发者会考虑到这一点,我需要找到如何解决这个问题?
如果您这样做是为了调试,您可以这样做:
{{ dump(form.getErrors(TRUE,TRUE)) }}
对于生产,您需要放置适当的验证约束消息。例如,使用注释:
use Symfony'Component'Validator'Constraints'NotBlank;
/**
* @NotBlank(message="Title should not be empty")
*/
private $title;
之后,error应该显示上面的消息,而不是一般的消息。
- formtype中的form字段可能附加了
new NotBlank()
类。 - 实体中可能有
@Assert'NotBlank
附属于字段属性类。 - 模型中可能有
@Assert'NotBlank
附着在场属性上类。
所以如果你设置更新它们如下,你就会知道它是什么字段。
new NotBlank('message' => 'Code is required.')
@Assert'NotBlank(message="Code is required.")