使用ParamConverter和POST动作的Symfony

时间:2016-10-17 14:21:58

标签: php symfony

我正在构建rest API,并且有保存帖子的方法。

postPostAction(Request $request)
{

}

我的POST请求包含所有Entity/Post属性

如何使用ParamConverter在此方法参数中拥有Entity/Post,例如:

postPostAction(Post $post)
{

}

我是否需要创建自定义ParamConverter,或者仅在PUTGET使用ParamConverter时才有意义?

1 个答案:

答案 0 :(得分:1)

您可以像这样使用默认的paramConverter

use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;

/**
 * @ParamConverter("thePost", class = "AppBundle:Post")
 */
public function postPostAction(Post $thePost)
{
    // ...
}

注释需要几个参数,其中包含要转换的变量的名称以及要转换为的类。

您甚至可以省略注释并编写

public function postPostAction(Post $thePost)
{
    // ...
}

这会自动将您的变量转换为实体。

您可以在documentation找到更多信息。