最近开发的一个项目要求我们要在一个app中构造另一个app中的链接并使用。
我们现在有一个管理平台,app名字 admin, 我们还有一个PC展示平台 app名字 pc
我们知道使用symfony中链接辅助函数 url_for() 可以生成我们想要的URL,可是,默认的情况下,这种生成出来的URL是显示前端控制器名字的(控制器名字根据所在开发模式的不同,显示的也不一样)。
比如: 我们在admin这个平台使用 url_for(’member/create’) 生成的url是 admin_dev.php/member/create, 很显然这种URL不是我们所期望的,我们不希望还要去解析判断。
在apps/myapps/settings.yml 中有一项设置 no_script_name: off 这项是控制时候在URL中显示前端控制器的名字。
当我们把它开启的时候,再使用url_for(’member/create’)的时候,就会生成 member/create, 这样就会得到没有前端控制器名字的URL。
其实,最理想的状态是,我在使用某一个链接辅助函数的时候,直接就可以获得某一个平台的URL,比如在admin的平台返回给我一个 http://www.foolbirds.com/pc_dev.php/article/show 这样的链接。 可是找了一下下午也没有找到一个,或许需要自己写一个构造这样的URL来满足项目的需求了。

恩不错,对我有帮助,谢谢!
Comment 由 minilon — 2010-01-14 @ 17:49