Zope将URL映射到视图

时间:2014-02-25 19:44:00

标签: python zope

我正在调试大型Zope应用程序,没有使用Zope Framework的经验。我正在尝试查找称为请求的代码。

我所知道的,这些页面是通过调用Products.Five.browser.BrowserView的实例生成的,但是如何知道它们将被调用? zope如何将URL映射到视图?

1 个答案:

答案 0 :(得分:1)

你想知道为特定的URL调用哪个View。在我遇到的Zope应用程序的所有实例中,应用程序的主文件夹中都有名为configure.zcml的文件,您可以在其中查看这些部件是如何组装在一起的。

如果要查找的 不明显,您可以从以下某个地方开始:

  • 在应用程序的实例位置(INSTANCE_HOME)中,可能有一个etc/package-includes/路径,其中包含一个或多个.zcml文件(“config slugs”)列表zope查找configure.zcml - 文件

  • 的软件包
  • 搜索$INSTANCE_HOME/Products以下的所有目录configure.zcml - 文件

你在那里寻找像这样的部分::

<browser:page
    for="*"
    permission="zope2.View"
    name="this_is_an_url_name"
    class="package_name.module_name.ClassName"
    />

将URL映射到视图。

另外,抬头:-) Zope有一些学习曲线,但 强大。