Php 生成不同结果的细枝路径()函数
我试图通过调用带有参数的path()向我的细枝模板添加动态链接Php 生成不同结果的细枝路径()函数,php,symfony,path,annotations,twig,Php,Symfony,Path,Annotations,Twig,我试图通过调用带有参数的path()向我的细枝模板添加动态链接 {{ path('single_sale_submit_page', {'id': book['id']}) }} 我在控制器中使用注释: @Route("/book/{id}", name="single_sale_submit_page") @Route("/boek/{id}", defaults={"id" = 1}, name="single_sale_submit_page") 这将导致以下url:../book/
{{ path('single_sale_submit_page', {'id': book['id']}) }}
我在控制器中使用注释:
@Route("/book/{id}", name="single_sale_submit_page")
@Route("/boek/{id}", defaults={"id" = 1}, name="single_sale_submit_page")
这将导致以下url:../book/?id=123456789。我不断得到一个错误,我的控制器需要一个强制参数,这当然是真的,因为生成的url有不同的语法(?)
如何设置从path()生成的url所对应的细枝
../book/123456789
而不是
../book/?id=123456789
编辑:
这与我的问题有些相同 在控制器的注释中添加默认值:
@Route("/book/{id}", name="single_sale_submit_page")
@Route("/boek/{id}", defaults={"id" = 1}, name="single_sale_submit_page")
使用以下命令清除缓存:
app/console cache:clear
重新加载后,path()生成的路径将对应于:
../book/123456789
而不是:
../book/?id=123456789
您是否使用knp分页?不,我没有使用knp捆绑包。您是否确保“单一销售提交页面”的路由定义不超过一个在您的项目中?尝试调试路由器并确保一切正常:
php应用程序/控制台路由器:调试
是否尝试将id
参数的默认值添加到@Route
注释中?之后清除缓存并报告错误是否消失。天哪,我已经搜索了好几天了,idk。。也许几周:D(在yaml和子域路由的情况稍有不同)就是这样。我现在明白了,但是默认值会突然产生很大的变化,这对我来说没有意义,因此我甚至没有尝试,而是与侦听器、订阅者、小树枝扩展等进行了斗争。多简单的解决办法啊:谢谢。你。先生