you're right. these fields are used to store their values in groups and roles directory.
the option "write ignore storage" is checked for the schemas used in member (meta, stacking and ldap) directory. On 5/18/07, Olivier Grisel <[EMAIL PROTECTED]> wrote:
Nicolas Clain a écrit : > Hi, > > I use CPSLDAPSetup with CPS-3.4.4 python-2.4.4 and Zope-2.9.7-final. > > When I want to create a new member in member's directory i got an error > => "KeyError: 'cpsGroups' > > I check the code, and i know why there is this bug: > 1) when MetaStorageAdapter's _setData method is called, the method > _setDataDoProcess do the correct stuff with cpsRoles and cpsGroups fields. > 2) after that, the StackingStorageAdapter's _setData method is called. > This time the _setDataDoProcess is called again, but the fields > cpsGroups and cpsRoles are not in data dictionary anymore. Then we have > an error with "value = data[field_id]" when field_id is cpsRoles or > cpsGroups. > > Which is the best solution ? I guess a simple test is not enough ? As far as I remember,the cpsGroups / cpsRoles fields of the members directory are computed to read / store their values from the groups and roles directory directly. So in my opinion not having cpsGroups and cpsRoles are not in data dictionary at the stacking directory level can be normal (though I am not 100% sure as I don't have a working CPS installation with at hand now). Please check the schemas that are used by the members directory to check that the "write ignore storage" options are checked on the computed fields. -- Olivier _______________________________________________ cps-devel mailing list http://lists.nuxeo.com/mailman/listinfo/cps-devel
-- Nicolas Clain
_______________________________________________ cps-devel mailing list http://lists.nuxeo.com/mailman/listinfo/cps-devel
