[英]Symfony2 Case sensitive Unique validation on 2 fields
Symfony的初学者,我有一个体育学院
class Institutes {
protected $id;
protected $name;
protected $city;
}
我想要的机构名称在每个城市中都是唯一的。 换句话说,阻止用户输入同一城市中的多个机构。 我知道有一个unique entity
选项,但无济于事。 因为机构名称在不同城市可以是相同的,但在same city
不能same city
。
我读了一些有关使用存储库类进行自定义验证的内容,但不知道它如何工作。 例如
name | city | valid |
-----------------+-------------------+
DHQ Hospital | Attock | t |
dhq Hospital | Attock | f | already exists in the city
dHQ HospITal | Attock | f | already exists in the city
DHQ Hospital | Islamabad | t |
使用UniqueEntity
验证器,它可以检查字段的组合,而不仅仅是单个字段是唯一的。 在您的情况下,您可以使用(使用批注):
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* @ORM\Entity
* @UniqueEntity(fields = {"name", "city"})
*/
class Institutes
{
...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.