Я хочу включить специальный индекс, называемый Sectors, для атрибута ('секторов') моей Dexterity на основе настраиваемый тип содержимого.
В моей схеме внутри types / mycontent.py у меня есть:
class IMyContent(form.Schema):
"""
My Content
"""
sectors = schema.Set(
title=_(u"Sectors"),
description=_(u"Select some sectors"),
value_type=schema.Choice(vocabulary=vocs.sectors),
required=True,
)
(...)
Затем я определяю индекс таким образом внутри indexers.py
from plone.indexer.decorator import indexer
from zr.content.types.mycontent import IMyContent
@indexer(IMyContent)
def Sectors(obj):
"""Indexer for Sectors attribute.
"""
d = getattr(obj, "sectors", u"")
return d if d else None
Наконец в корневом пакете configure.zcml :
<adapter name="Sectors" factory=".indexers.Sectors"/>
Однако, похоже, это не работает. Даже после переустановки продукта я не вижу индекса в портале_каталог и мозговой объект каталога, похоже, не имеет его.
Что я делаю не так?