2017-09-25 37 views
0

以下是我的控制器編輯操作的一部分。方法是PUT提交表單Symfony 3後遺失了以前的實體數據

public function editRentalAction(Request $request, Rental $rental): JsonResponse 
{ 
    $rentalManager = $this->get('rental.rental_manager'); 

    $form = $this->createForm(RentalType::class, $rental); 
    $form->submit(json_decode($request->getContent(), true)); 

當我嘗試從要求提交一些實體的數據(這就是我要更新),所有其他實體的數據丟失(設定爲null)。我怎麼能改變我發送的這個參數?

請求有效載荷:

{"example_parameter": "example"} 
+0

其symfony的版本,您使用的是什麼呢? – nifr

+0

這是Symfony 3.3 – Cliassi

回答

1

PUT將抵消空性質。

最佳解決方案:使用PATCH而不是PUT

替代方法:使用PUT發送整個對象(不僅更新了屬性)。

+0

'PATH'有同樣的問題 – Cliassi