2012-12-03 9 views
1

Json-RPC로 매개 변수의 유효성을 검사하려고합니다. Symfony2 검증으로 나는이 작업을 수행 할 수 있습니다Symfony2를 사용하여 POPO 확인

$expense = new Expense; 
$expense->setAmount(1); 
$validator = $this->get('validator'); 
$errors = $validator->validate($expense); 

하지만 수동으로 setFoo() 방법으로 각각의 매개 변수를 지정하지 않습니다. Symfony Form 라이브러리가 작동하는 것과 유사한 데이터를 바인딩 할 수 있습니까?

답변

0

이것은 Symfony2에서는 불가능합니다. 직접 데이터를 바인딩해야합니다.

$params = array('amount' => 1); 

foreach($params as $key => $value) { 
    try { 
     $path = new PropertyPath($key); 
     $path->setValue($obj, $value); 
    } catch (\Exception $e) { 
     // parameter does not exist in POPO 
    } 
} 

매개 변수를 POPO 개체에 바인딩하면 정상적으로 유효성을 검사 할 수 있습니다.

0

질문을 이해하는 경우 $errors = $validator->validate($user)이 작업을 수행합니다. using the validator service 설명서를 참조하십시오.

관련 문제