简体   繁体   中英

zope.annotation example in documentation fails. Help needed to correct it

I am trying to understand Annotations from this document:

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

However the example fails when run.

I get:

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>)

Example missing the following statements:

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM