在CherryPy应用程序中动态重新映射静态文件服务的根目录

时间:2013-09-13 12:20:54

标签: cherrypy

我有一个应用程序,其中有两个不同的页面 - 它们不共享 辅助文件和文件夹,辅助文件和文件夹 css,js或images。

默认情况下,一个应用程序将作为域的“索引”提供 (例如`http://domain.name/')和辅助文件和文件夹 在source tree的根目录。

当传入的网址附加superior时,会投放其他应用 对它(例如http://domain.name/superior/)。并在the superior subdirectory of the root 是它的辅助文件和文件夹的位置。

As you can see 我正在尝试处理上级路径并动态更改 _cp_config中讨论的使用@cherrypy.expose def superior(self, s="supreme", cmpg=None, banner=None): _cp_config = { 'tools.staticdir.root' : full_path('superior') } return self.render(Superior(s)) 的静态文件的根目录:

superior

然而,调试应用程序显示它仍在寻找所有 源树的根目录中的静态文件而不是{{1}} 子目录。

我需要做什么来配置CherryPy以便静态资源 在根的这个子目录而不是根目录中搜索?

1 个答案:

答案 0 :(得分:1)

我认为你的方法必须是这样的:

@cherrypy.expose
@cherrypy.config(**{'tools.staticdir.root' : full_path('superior')})
def superior(self, s="supreme", cmpg=None, banner=None):
    return self.render(Superior(s))