我正在尝试实现uniqueEntity功能,以避免在DB中保存两次或更多但似乎无法正常工作。
我红了这个:http://symfony.com/doc/current/reference/constraints/UniqueEntity.html
这是我的代码:
我做错了吗?
...
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* Artist
*
* @ORM\Table(name="artists")
* @ORM\Entity
* @UniqueEntity(fields = {"firstName", "lastName", "birthDate", "deathDate"})
*/
class Artist
{
/**
* @var integer
*
* @ORM\Column(name="ArtistID", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="ArtistFirstName", type="string", length=100, nullable=true)
*
*/
private $firstName;
/**
* @var string
*
* @ORM\Column(name="ArtistLastName", type="string", length=100)
* @Assert\NotBlank()
*/
private $lastName;
/**
* @var \DateTime
*
* @ORM\Column(name="ArtistBirthDate", type="datetime", nullable=true)
*/
private $birthDate;
/**
* @var \DateTime
*
* @ORM\Column(name="ArtistDeathDate", type="datetime", nullable=true)
*/
private $deathDate;
...
任何帮助都会很棒。谢谢。
答案 0 :(得分:0)
经过大量的测试,它确实有效!
我的所作所为:
现在我发现最终用户的错误并不明确。
错误始终以第一个字段为目标。好吧,这似乎是合乎逻辑的,但还有其他解决方案来显示错误吗?也许最重要的是,但所有错误都会显示在那里,我更喜欢看到关联领域前面的错误。
谢谢大家。