路由器延迟加载

2024-09-28 03:20:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是wheezywebframework,但我猜同样的概念也可以应用于任何框架。你知道吗

我的URL在列表中:

import WelcomeHandler
import OtherHandler

all_urls = [
    url('/', WelcomeHandler, name='HomePage'),
    url('/some-other-page', OtherHandler, name='OtherPage'),
    ...
]

要使此工作正常,我需要将所有请求处理程序导入该文件。如果您有许多页面,这些导入可能会开始失控,除了您在一个文件中有许多导入会使其混乱之外,我猜从性能角度来看,这不是最好的解决方案。你知道吗

延迟导入这些请求处理程序的常见方法是什么?例如,WebApp2框架允许您使用点表示法将它们指定为字符串,并将其计算为实际文件:http://webapp-improved.appspot.com/guide/routing.html#lazy-handlers

从文档来看,wheezyweb似乎没有这个选项。如何实现类似的功能?你知道吗

谢谢!你知道吗


Tags: 文件nameimport框架概念url处理程序列表
1条回答
网友
1楼 · 发布于 2024-09-28 03:20:14

我不熟悉wheezy,但如果您只需调用url()并将其添加到列表中,我的方法将是在处理程序模块中使用install方法:

from importmodule import all_urls

...
install("HomePage", "/", WelcomeHandler)    

def install(name, path, callable):
    all_urls.append(url(path, callable, name=name))

相关问题 更多 >

    热门问题