Bha*_*nan 6 javascript ajax jquery symfony
在Symfony 1中,我们可以访问模板页面中的操作,例如,url_for('modulename/actionname')无需在routing.yml中编写任何内容.
这怎么可能在Symfony2中?,即如果我必须在twig中访问多个动作而不指定routing.this在使用ajax时很有用.
提前致谢
如果我正确理解你的问题,你会问如何通过传递模块名称和操作名称而不是路由名称来生成 url。是对的吗?
我认为这在 Symfony2 中是不可能的。如果您查看generate中的方法,Symfony\Component\Routing\Generator\UrlGenerator您会发现它需要路由名称作为第一个参数。此外,Symfony2 本身并不支持 symfony 1 所支持的通用路由(如下所示以供参考)。
default_index:
url: /:module
param: { action: index }
default:
url: /:module/:action/*
Run Code Online (Sandbox Code Playgroud)
如果没有这些通用路由,您就无法简单地访问 /myModule/myAction,而不实际为其定义路由。并且不要忘记 Symfony2 现在使用捆绑包,这会使事情变得更加复杂。
因此,对于您想要访问的任何操作,您都需要为它们编写路由。
为了实际生成 URL...
- 从控制器:$this->generateUrl($routeName);
- 从 PHP 模板:$view['router']->generate($routeName);
- 从 Twig 模板:{{ path('_routeName') }}或{{ url('_routeName') }}绝对 URL
| 归档时间: |
|
| 查看次数: |
2085 次 |
| 最近记录: |