0
필자의 목표는 필드에서 uniqueEntity 제약 조건을 가진 엔티티의 유효성을 검사하는 것입니다. 이 필드는 라이프 사이클 콜백 PrePersist를 사용하여 연결된 2 개의 매핑되지 않은 필드로 구성됩니다. 문제는 유효성 검사가 발생하지 않으며 시스템이 데이터를 데이터베이스에 삽입 할 수없는 경우이를 허용한다는 것입니다.symfony - 매핑 된 필드가없는 고유 엔티티 제약
/**
* Recipe
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="AppBundle\Entity\RecipeRepository")
* @ORM\HasLifecycleCallbacks()
* @UniqueEntity(
* ignoreNull = false,
* fields={"amount"},
* message="Not valid"
*)
*/
class Recipe
{...}
...
/**
* @ORM\PrePersist()
*/
public function preSave()
{
$this->amount = $this->getAmountInteger() . '.' . $this->getAmountDecimal();
}
속성 값'_' (UniqueEntity 제약 조건 유지) _'ORM \ Column (name = "amount", type = "string", length = 255, unique = true) – Delphine
스키마 도구 전용으로 'unique = true'가 아닌가요? –
@Delphine, 필드에 unique = true 제약 조건이 설정되어 있으므로 양식의 유효성을 올바르게 검사 할 수없고 행의 고유성을 처리 할 수 없습니다. 사실, 수표는 플러시와 함께 제공되며 유효한 양식 방법이 아닙니다. –