猴子补丁添加缺少的界面

时间:2018-09-20 14:10:52

标签: plone plone-4.x

如何使用collective.monkeypatcherIFooBar中添加someproduct

这是我尝试过的方法,它是错误的(因为IFooBar在原始产品中不存在。)

<monkey:patch description="Create missing FooBar interface"
              class="someproduct.interfaces.IFooBar"
              original="IFooBar"
              replacement="myproduct.patches.IFooBar"
              docstringWarning="true" />

错误是ConfigurationError: ('Invalid value for', 'class', 'ImportError: Module someproduct.interfaces has no global IFooBar')

我的最终目标是跳过此错误:当我尝试激活/停用加载项时收到PicklingError: Can't pickle <class 'someproduct.interfaces.IFooBar'>: attribute lookup someproduct.interfaces.IFooBar failed

这是因为我安装了具有someproduct的{​​{1}}的新版本,然后又恢复了较旧的版本(没有IFooBar)而没有卸载附加组件。

更新

替换行:

IFooBar

使用

class="someproduct.interfaces.IFooBar"

是同一回事。错误: class="someproduct.interfaces"

1 个答案:

答案 0 :(得分:0)

哦。只需添加:ignoreOriginal="true"