2015-07-21 73 views
1

我想從這個文件理解註釋:文檔中的zope.annotation示例失敗。幫助需要加以糾正

http://docs.zope.org/zope.annotation/index.html

然而,例如無法運行時。

我得到:

Traceback (most recent call last): 
    File "./zopepy", line 366, in <module> 
    exec(compile(__file__f.read(), __file__, "exec")) 
    File "test1.py", line 29, in <module> 
    bar = IBar(foo) 
    File "eggs/zope.component-3.9.5-py2.7.egg/zope/component/_api.py", line 156, in adapter_hook 
    return sitemanager.queryAdapter(object, interface, name, default) 
    File "eggs/zope.component-3.9.5- py2.7.egg/zope/component/registry.py", line 228, in queryAdapter 
    return self.adapters.queryAdapter(object, interface, name, default) 
    File "eggs/zope.annotation-3.5.0-py2.7.egg/zope/annotation/factory.py", line 42, in getAnnotation 
    annotations = zope.annotation.interfaces.IAnnotations(context) 
TypeError: ('Could not adapt', <__main__.Foo object at 0xb6d6956c>, <InterfaceClass zope.annotation.interfaces.IAnnotations>) 

回答

1

例缺少以下語句:

from zope.annotation.attribute import AttributeAnnotations 
provideAdapter(AttributeAnnotations)