2017-11-09 13 views
1

어설 션을 적용해야하는 annotation 제약 조건에 대한 속성 경로와 같은 것을 설정할 수 있는지 궁금합니다. 내가 경로 = "this.file"와 같은 속성을 가진 문서 엔티티의 하위 파일 속성에 이미지의 제약 조건을 적용하고자하는이 예에서는annotation constraint 속성 경로

/** 
* @ORM\OneToOne(targetEntity="Document", cascade={"persist"}) 
* @Assert\Image(mimeTypes={"jpeg", "png"}, path="this.file") 
* 
protected $document; 

:

이 예제를 고려

어떻게 든 가능합니까?

+0

$ file 속성은 Document 엔터티의 속성입니까? – Mz1907

+0

이 예에서는 예입니다. –

+0

아마도 Expression을 사용할 수 있습니다. 그걸 생각 해본 적있어? – Mz1907

답변

0

PHP에서 제약 조건을 동적으로 정의하는 것만 생각할 수 있습니다.

use Symfony\Component\Validator\Constraints\Image; 
// [...] 
public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
    $builder 
     ->add('document', FileType::class, [ 
      'constraints' => [ 
       new Image([ 
        'mimeTypes' => ["jpeg", "png"], 
        'path' => $anyVariable 
       ]) 
      ], 
     ]); 
+0

너무 나쁘다. 나는 형식이 아닌 개체에 제약 조건을 설정하고 싶다. –

0

doc에서 설명한대로 사용자 정의 발리 데이터를 만든 다음 원하는 필드에 적용 할 수 있습니다.

희망 하시겠습니까?

+0

실제로. 이것은 해결책이 될 수 있습니다. 내가 한번 시도해 보자. thx –

+0

불행히도 나는 바퀴를 재발 명할 필요가 없도록 Symfony 단언을 사용하고 싶습니다. –