Symfony2가 ORM 메타 데이터를 사용하여 자동으로 유효성 검사 규칙을 작성하는 방법에 대해 깨닫는 사람이 있습니까? Symfony2.1을 사용하고 있습니다. 예를 들어엔티티 매핑 메타 데이터의 유효성 검사 규칙
, 우리는 필요한 name
속성을 가진 Foo
법인이있는 경우, 우리는 (주석으로) 다음과 같은 교리의 metada 있습니다
@ORM\Column(name="name", type="string", length=255, nullable=false)
을하지만 우리는 Assert
으로 nullable
정보를 반복해야 우리 경우 이 서버 측에서 검증하려는 : 우리가 integer
유형의 number
속성이있는 경우, 다른 측면에서
@Assert\NotBlank()
,이 @Assert
주석을 사용할 필요없이 자동으로 유효성 검사 규칙으로 사용됩니다.
@ORM\Column(name="number", type="integer", nullable=true)
//@Assert\Type(type="integer") is no needed
@WilliamDURAND에게 감사드립니다. 그러나 사실 어떤 점에서는 두 레이어가 섞여있다. 앞서 말했듯이 ORM에 의해 'integer'제약 조건이 설정되면 이는 유효성 검사 레이어에서도 사용됩니다. 그러나 예를 들어, 'nullable' 제약 조건은 사용되지 않습니다. –
Form 구성 요소에 포함되지 않았습니까? Form 구성 요소는 Doctrine 메타 데이터를 기반으로 유형을 추측 할 수 있으며 일부 유형은 유효성 검사를 구현합니다 (예 : HTML5 유효성 검사). –
적어도 유효성 검사 구성 요소 여야한다고 생각합니다. 적어도 동일한 방식으로 작동합니다. HTML5 유효성 검사를 비활성화하고 서버가 필드 유형에 대한 오류 메시지를 표시하며 유효성 검사 제약 조건이 추가되지 않았습니다. 아마도 Form 및 Valdation 구성 요소가 어떤 시점에서 비슷한 동작을 할 수 있습니까 ?? : S –