使用Symfony2 / Doctrine ORM
我有一个实体“ProductCategory”。
ProductCategory (字段)
我想用param转换器创建一个路由。这就是我所拥有的。根据文档here,它应该有效。
/**
* @Route("/products/{category_name}")
* @ParamConverter("c", class="AppBundle:ProductCategory", options={"mapping": { "displayName" = "category_name"}})
*/
public function viewProductPageAction(ProductCategory $c)
{
return $this->render('templates/view-product.html.twig');
}
那么那里发生了什么?我想将路径密钥“ category_name ”转换为 ProductCategory 实体,其字段为 DisplayName ,并将其分配给 $ c
似乎很容易。将category_name分配给映射选项中的displayName字段。但是我收到了这个错误。
无法猜测如何从请求信息中获取Doctrine实例。 500 - 逻辑异常
我收到错误的原因是什么,以及我如何误解文档?提前致谢。
答案 0 :(得分:1)
你足够接近了。传递给mapping
的参数顺序相反。您在这里寻找的正确语法是这样的:
/**
* @Route("/products/{category_name}")
* @ParamConverter("c", class="AppBundle:ProductCategory", options={"mapping": { "category_name" = "displayName"}})
*/