Dominik wrote:
http://developer.plone.org/reference_manuals/external/plone.app.dexterity/advanced/catalog-indexing-strategies.html
mentions that
"Objects are normally acquisition-wrapped when they are indexed, which means
that an indexed value may be acquired from a parent. This can be confusing,
especially if you are building container types and creating new indexes for
them. If child objects don’t have attributes/methods with names
corresponding to indexes, the parent object’s value will be indexed for all
children as well."
Is there a way to prevent this.

Define a custom indexer for your field, specific to your content type, and then define "a default indexer" to prevent indexing that field for any other type. Something like this should work as a default indexer::

    @indexer(Interface)
    def indexNothing(context):
        raise AttributeError
    grok.global_adapter(indexNothing, name="my_indexed_field")

So, just raising AttributError in matchinh indexer should prevent the field from being indexed.

-Asko
_______________________________________________
Product-Developers mailing list
product-develop...@lists.plone.org
https://lists.plone.org/mailman/listinfo/plone-product-developers

Reply via email to