对于每个用户,我都有姓名,电话号码。我需要在validation.yml中验证这些字段以检查它们是否为空。对于名称和姓氏验证,我有这个并且它运作良好:
RFQ\IronilBundle\Entity\User:
properties:
name:
- NotBlank: { groups: [not_empty] }
surname:
- NotBlank: { groups: [not_empty] }
问题在于我无法在文档中找到如何验证电话字段的任何示例,因为每个用户可以拥有多个电话号码。我的电话实体是:
/**
* @ORM\Column(type="array", nullable=true)
* @Assert\NotNull()
*/
protected $phone;
并且在注册时我在数据库中插入空数组值(我需要这个在我的编辑操作中显示空的手机字段):
public function __construct() {
parent::__construct();
$this->phone = array('');
}
谢谢!
答案 0 :(得分:2)
有一个All
验证类型会迭代arrays
和Traversable
个对象,并对它们应用约束。因此,例如,如果要确保每个电话元素最多10个字符,则可以执行以下操作:
RFQ\IronilBundle\Entity\User:
properties:
name:
- NotBlank: { groups: [not_empty] }
surname:
- NotBlank: { groups: [not_empty] }
phone:
- All:
- NotBlank: ~
- Length:
max: 10