代码之家  ›  专栏  ›  技术社区  ›  GhitaB

Monkey补丁添加一个缺少的接口

  •  1
  • GhitaB  · 技术社区  · 6 年前

    怎么可能呢 collective.monkeypatcher IFooBar 在一个 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

    一些产品 IFooBar公司 ,然后我恢复到一个旧版本(没有 IFooBar公司

    更新:

    更换管路:

    class="someproduct.interfaces.IFooBar"
    

    具有

    class="someproduct.interfaces"
    

    是一样的。错误: ConfigurationError: Original IFooBar in <module 'someproduct.interfaces' from '/plone/buildout-cache/eggs/someproduct-1.2-py2.7.egg/some/path/interfaces.pyc'> not found

    1 回复  |  直到 6 年前
        1
  •  0
  •   GhitaB    6 年前

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

    推荐文章