如果我在Symfony2中被模仿为另一个用户,我在更改页面时会收到错误。它仅在路径具有其他参数时发生。在指向的行号处没有路由生成的迹象。
/**
* @Route("/member/{id}", name="member_page")
* @Template()
*/
public function memberAction($id)
在呈现模板期间抛出异常(“缺少一些必需参数(”slug“)以生成路径”member_page“的URL。”)在members.html.twig第2行。
答案 0 :(得分:2)
你有两条同名的路线吗?
观察你的routing.yml文件或类注释,也许你已经用slug参数定义了一个前缀。
答案 1 :(得分:0)
如果不需要“slug”参数,请将其默认值设置为NULL。这是一个例子
message_edit:
pattern: /edit/{slug}
defaults: { _controller: CommunicationBundle:Default:edit, slug: null }
答案 2 :(得分:0)
感谢您的回答,但还有其他事情发生: 该模板正在扩展另一个可以找到错误的模板。因此,在错误消息中显示了不正确的亚麻布。设置较小的测试环境后,我可以复制问题。它是退出模拟的锚点,我想重定向到当前页面,但显然缺少当前页面的参数:
<a href="{{ path( 'app.request.attributes.get('_route')', {'_switch_user': '_exit'}) }}">Stop impersonation</a>
我现在只使用指定的'home'路线修复它。