使用卸载配置文件删除自定义属性表

时间:2011-10-10 19:01:49

标签: plone uninstall genericsetup

我将信息存储在我的一个自定义产品的自定义属性表中(我当时在javascript文件中使用该信息)。我想要干净地卸载这个产品,但我似乎无法弄清楚如何使用genericsetup删除卸载时的自定义属性表。我知道remove="True"不起作用,但我没有太多运气找出正确的方法(或任何方式)去除它。任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:4)

这至少有两个原因令人困惑:

  • 我们正在积极使用"old style" and "new style" technologies。旧样式引用Extensions/Install.py(Python代码),新样式引用profiles/default(GS XML + setuphandlers.py Python代码)。

  • 在所有可能的情况下成功安装和卸载附加组件仍然需要使用新旧技术。

如果您不关心卸载,则永远不需要使用Extensions/Install.py。如果您确实关心卸载,请使用安装卸载方法创建Extensions/Install.py。 同时创建“卸载”配置文件(除了“默认”配置文件),例如profiles/uninstall。配置Extensions/Install.py:install()方法以执行安装时的“正常”配置文件/默认步骤。现在是“有趣”的部分。

因为某些技术可以通过GS“正确”卸载,即他们尊重remove=True参数,你的Extensions / Install.py:unload()方法应该执行“正确的”GS配置文件进行卸载。但是,如果你的插件使用无法通过GS“正确”卸载的技术,即那些不遵守remove=True参数的技术,那么你需要编写Python代码来执行卸载。

见:

了解更多信息。