在金字塔中创建新包

2024-05-08 15:17:30 发布

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

我发现我需要将所有安全视图可调用项和模板分离到自给自足的包中。当然我不知道该怎么做,因为我在文档中没有找到任何关于制作包或模块的参考资料。到目前为止,我已经有了金字塔人建议的默认脚手架结构:

项目应用程序,项目文件夹。项目文件夹是一个包,因此我们在其中有__init__.py文件,其中定义了配置,当然还有路由映射:

def main(global_config, **settings):
    """ This function returns a Pyramid WSGI application.
    """

    config = Configurator(settings=settings,
                          root_factory='project.models.RootFactory')

    config.add_subscriber('project.subscribers.add_base_template',
                          'pyramid.events.BeforeRender')

    config.add_route('home', '/')
    config.add_route('cat', '/cat/{cat_url:\w+}/')
    config.add_route('cat_page', '/cat/{cat_url:\w+}/{page:\d+}/')
    config.add_route('article_view', '/article/{url:\w+}/')

    config.scan()
    return config.make_wsgi_app()

现在假设在管理界面中,我还有大约30条路由,所以我想把它们分成管理包。我认为下一步是在Project文件夹下创建admin文件夹。但我不知道下一步是什么。我应该如何组织admin/__init__.py文件?在哪里放置路由,最重要的是,金字塔应该如何知道这个包以及在那里定义的路由?你知道吗


Tags: 文件项目pyproject文件夹addconfigurl