Migrating from NuxMetaDirectory

Revision: $Id$


1   Context

NuxMetaDirectories has been deprecated in CPS3 in favor of CPSDirectories (cleaner architecture, based on CPSSchemas).

2   Changes

  1. Change all references to "portal_metadirectories" to "portal_directories".

  2. Replace "display_prop" (property of a directory) with "title_field".

  3. Replace references to directory_* skins by cpsdirectory_*. Beware that some skin names have changed, and that the parameters to cpsdirectory_entry_view are now "dirname" and "id" (not "entry_id").

  4. Calls to getEntry('foo') will not return None anymore if the entry does not exist but raise KeyError. If you want None returned, use getEntry('foo', default=None).

  5. Replace "getSearchableSchemaKeys" by querying the schema directly for the fields that you want.

  6. Be aware that results from a searchEntry is different than before.

    If there are no return_fields, you get:

    ['id1', 'id2', etc.]

    If there is a return_fields parameter, you get:

    [('id1', {'field1': value1, 'field2': value2}),
      ('id2', {'field1': value3, 'field2': value4}),

    return_fields being in this example ('field1', 'field2')