def set_swimlane(self, value):
        """Store record ids in separate location for later use, but ignore initial value"""

        # Move single record into list to be handled the same by cursor class
        if not self.multiselect:
            if value and not isinstance(value, list):
                value = [value]

        # Values come in as a list of record ids or None
        value = value or []

        records = SortedDict()

        for record_id in value:
            records[record_id] = self._unset

        return super(ReferenceField, self).set_swimlane(records)
Store record ids in separate location for later use, but ignore initial value