Symfony3에서 클래스가없는 양식을 만들려고합니다. 불행히도 유효성 검사가 실패하지만 메시지가 전혀 표시되지 않습니다. 단지 emtpy 문자열입니다. 양식 검증에 실패했지만 오류가 발생하지 않습니다.
public function postCollectionAction(Request $request)
{
$data = json_decode($request->getContent(), true);
$options = ["csrf_protection" => false];
$form = $this->createFormBuilder([], $options)
->add('elements', CollectionType::class,
[
'entry_type' => MyClassType::class, //this should be form type
'allow_add' => true, // this needs to be true
]
)
->getForm();
$form->submit($data); // This was the main problem - form did not get submitted
$form->handleRequest($request);
if ($form->isValid()) {
die("ok");
}
else
{
var_dump((string)$form->getErrors(true, false));
die("not ok");
}
}
클래스
나는이use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Table
*/
class MyClass
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255, unique=true)
* @Assert\NotBlank()
*/
private $name;
}
같은 모습을 확인하는 것을 시도하고있다 그리고 이것은 내가 내가 명백한 놓친 거지 생각 그것을
{
"elements": [{
"name": "My element name"
}]
}
을 보내고 것입니다. 누군가이 일을하도록 나를 도울 수 있습니까?
UPDATE은 앨빈 이층 제안을 코드를 편집
Symfony3 또는 Symfony2를 사용하고 있습니까? –
@AlvinBunk 사용중인 심포니 3입니다. 양식 구성 요소가 변경된 것을 몰랐습니다. - 혼동스러운 태그를 제거합니다. –