我目前正在嘗試讓symfony表單與我的文章一起工作,並把其餘的API端點。如何獲取Symfony表單以使用REST API?
目前我有:
$request = $this->getRequest();
$cc = new CreditCard();
$form = $this->createForm(new CreditCardType(), $cc);
$form->handleRequest($request);
if ($form->isValid()) {
//...
}
然而,形式永遠有效。研究這個問題,似乎表單的isSubmitted字段是錯誤的,所以它永遠不會通過驗證。另外,由於這是api調用,因此我在信用卡類型中將csrf_protection設置爲false。
下面是我在用戶提交哪些數據的例子:
{
"credit_card": {
"name" : "Example Name"
...
}
}
我如何提交給註冊這個帖子/放置請求,並有形式驗證通過?謝謝。
正如我剛纔所說,表單的提交價值是假的。我在symfony的Form類中的提交函數中放了一個die語句,並且死亡從未被觸發。另外提交函數是symfony中唯一一個提交爲true的集合。 CreditCardType與您期望的添加字段的構建器完全相同,getName返回'credit_card',data_class設置爲creditcard enity。 –
@DerickF很抱歉。我用isValid()困惑了isSubmitted()。你是否將數據發佈爲JSON字符串?如果您需要解析您的請求內容以解碼de JSON,然後將該對象用作表單數據。讓我知道如果是這樣的話,我可以用正確的答案編輯我的帖子! –
精美的作品!謝謝! –