在Plone中取消注册zcml资源目录

时间:2012-10-30 05:29:06

标签: plone zope add-on grok zcml

我想'取消注册'使用configure zcml注册的资源目录和指令

我已经卸载了最初注册资源目录的自定义加载项,但是其他软件包仍然可以调用/++resource++my.package并从已卸载的插件中引入资源...是否有指令正确注销,或通过ZMI或一次性脚本以某种方式取消注册?

价: http://plone.org/products/dexterity/documentation/manual/five.grok/browser-components/resource-directories

3 个答案:

答案 0 :(得分:1)

您想使用z3c.unconfigure

http://pypi.python.org/pypi/z3c.unconfigure

答案 1 :(得分:1)

您对通过Plone控制面板安装和卸载持久性配置以及从您的扩建中实际移除鸡蛋感到困惑。

资源目录在包ZCML文件中注册,并且不是持久的。您必须从buildout中删除包蛋,才能加载这些ZCML文件。

如果您出于某种原因需要包egg提供的代码但绝对不希望注册资源,则需要使用z3c.unconfigure包再次注册资源目录。

除非他们主动干涉任何事情,否则我认为没有必要这样做。请注意,在您的Plone站点中仍然可以使用资源URL完全没有害处。

答案 2 :(得分:1)

如果您不使用,为什么不从包中删除不必要的注册?

另一种选择是注册特定浏览器层的资源目录(我相信无论如何都可以在ZCML中使用),然后只使用GenericSetup中的browserlayer.xml在您的软件包中安装该层。但这更为复杂。

然而,正如Martijn所说,把它留在原地是没有害处的。

相关问题