I understood...
uniqueconstraints expects the true name of the db field to be equal to activityGroup_id , not just activityGroup .
You can make sure that the field is called in the database by providing JoinColumn.
So the smart solution:
/** * @ORM\Entity * @ORM\Table(name="activity", * uniqueConstraints={ * @ORM\UniqueConstraint(name="name_idx", columns={"activity_group_id", "name"}), * @ORM\UniqueConstraint(name="sort_idx", columns={"activity_group_id", "sort_id"}) * } * ) */ class Activity { // ... /** * @ORM\ManyToOne(targetEntity="SeduceMe\SiteBundle\Entity\ActivityGroup", inversedBy="activities") * @ORM\JoinColumn(name="activity_group_id", referencedColumnName="id") */ protected $activityGroup; //... }
Stuck source share