我有一个pylons web-app,它使用routes.url_for
生成指向控制器操作的链接,并使用webhelpers.html.tags
中定义的函数链接到静态文件(CSS,javascript,图像等)。这工作正常,而我的网络应用程序托管在服务器的根目录(即,网络应用程序从'/'运行)。但是,如果我移动网络应用程序,以托管在其他位置,例如'/ foobar /',则url_for
链接可以正常工作,但webhelpers.html.tags
下的功能仍会生成指向'的链接/ path / to / resource'而不是'/ foobar / path / to / resource'。
我的理解是WSGI定义了一个名为SCRIPT_NAME
的环境变量,它包含通向应用程序的路径(在本例中为/ foobar)。我的猜测是url_for
正在关注这个环境变量并相应地更改它生成的URL。
有没有办法让webhelpers
模块做同样的事情?
答案 0 :(得分:1)
如果我正确地读到这个,听起来url_for正确地返回了你想要的URL的字符串。但据我所知,你将一个url字符串传递给各种webhelpers。
你在做这样的事吗?
link_to('something', url(controller='path', action='to'))