code: def _set(self, instance, value, **kw):
          
          logger.debug("DexterityFieldManager::set: value=%r" % value)
  
          # Check if the field is read only
          if self.field.readonly:
              raise Unauthorized("Field is read only")
  
          fieldname = self.get_field_name()
          # id fields take only strings
          if fieldname == "id":
              value = str(value)
  
          try:
              # Validate
              self.field.validate(value)
  
              # TODO: Check security on the field level
              return self.field.set(instance, value)
          except WrongType:
              logger.warn("WrongType: Field={} Value={}".format(self.field, value))
          except:  # noqa
              logger.warn("Unknown Exception: Field={} Value={}".format(self.field, value))
docs: Set the value of the field