我的Sonata Admin Bundle中有一些表单,有些字段设置为“required = true”。 现在,您可以使用空字符串来规避此要求,例如:与空间。 它甚至适用于整数类型..
如何构建验证,从一些不允许的条目中获取保证?
谢谢
答案 0 :(得分:7)
您可以添加自定义回调验证程序,以验证所有情况下的字符串。
只需添加您的管理类:
/**
* {@inheritdoc}
*/
public function validate(ErrorElement $errorElement, $object)
{
$errorElement
->assertCallback(array('validateMyEntity'))
;
}
并在您的实体中:
use Symfony\Component\Validator\ExecutionContext;
/**
* Validates my entity and throw violations
*/
public function validateMyEntity(ExecutionContext $context)
{
$title = $this->getTitle();
if (empty($title)) {
$context->addViolation('Title can\'t be empty.');
}
}
希望它有所帮助。