2016-02-08 23 views
2

是否可以使用Symfony2中的@ParamConverter註釋將通過$ _POST請求發送的參數轉換爲實體?

symfony2文檔中給出的所有示例均將實體從路徑中定義的參數轉換而來。

設置類似的東西:

/** 
* @Route("/") 
* @ParamConverter("user", class="BvStandardServiceBundle:User", options={"id" = "userId"}) 
*/ 
public function userAction(User $user) 
{ 
} 

如果我打電話跟在userId $ _ POST PARAM一個id這條路線,它會導致:

無法猜測如何得到一個學說實例來自請求 的信息。

+0

您是否嘗試在控制器簽名上添加@Method(「POST」)? Antoher的方式可能是這樣的http://stackoverflow.com/questions/31186731/using-custom-paramconverter-for-post-request-in-symfony-2 – stuzzo

+1

使用自定義參數轉換器http://stfalcon.com/en/blog /後/ Symfony2的定製,paramconverter – malcolm

回答

3

的symfony的paramConverter僅要求PARAM到URL不幸運行:ParamConverter specification

框架的URL參數有關搜索PARAM URL和paramConverter之間的關聯直接工作。如果你沒有在你的URL中使用param,那麼引擎symfony將不會搜索你的paramConverter的關聯。

您還可以查看kernel.event這其中需要的工作要求:Class : ParamConverterListener.php

相關問題