def fromFieldData(self, sgData):
    '''
    Sets the fields value from data returned by a Shotgun query.

    Returns True on success.

    Args:
      * (dict) sgData:
        Dict of Shotgun formatted Entity field values.
    '''

    with self:
      ShotgunORM.LoggerField.debug('%(sgField)s.fromFieldData()', {'sgField': self})
      ShotgunORM.LoggerField.debug('    * sgData: %(sgData)s', {'sgData': sgData})

      parent = self.parentEntity()

      if not self.isEditable():
        raise RuntimeError('%s is not editable!' % ShotgunORM.mkEntityFieldString(self))

      if not ShotgunORM.config.DISABLE_FIELD_VALIDATE_ON_SET_VALUE:
        self.validate(forReal=True)

      result = self._fromFieldData(sgData)

      if not result:
        return False

      self.setValid(True)
      self.setHasCommit(True)

      self.changed()

      return True
Example #2
0
    def setValue(self, sgData):
        '''
    Set the value of the field.

    Returns True on success.

    Args:
      * (object) sgData:
        New field value.
    '''

        with self:
            ShotgunORM.LoggerField.debug('%(sgField)s.setValue(...)',
                                         {'sgField': self})
            ShotgunORM.LoggerField.debug('    * sgData: %(sgData)s',
                                         {'sgData': sgData})

            if not self.isEditable():
                raise RuntimeError('%s is not editable!' %
                                   ShotgunORM.mkEntityFieldString(self))

            if not ShotgunORM.config.DISABLE_FIELD_VALIDATE_ON_SET_VALUE:
                self.validate(forReal=True)

            if sgData == None:
                sgData = self.defaultValue()

            updateResult = self._setValue(sgData)

            if not updateResult:
                if not self.isValid():
                    self.setValid(True)

                return False

            self.setValid(True)
            self.setHasCommit(True)

            self.changed()

            return True
  def setValue(self, sgData):
    '''
    Set the value of the field.

    Returns True on success.

    Args:
      * (object) sgData:
        New field value.
    '''

    with self:
      ShotgunORM.LoggerField.debug('%(sgField)s.setValue(...)', {'sgField': self})
      ShotgunORM.LoggerField.debug('    * sgData: %(sgData)s', {'sgData': sgData})

      if not self.isEditable():
        raise RuntimeError('%s is not editable!' % ShotgunORM.mkEntityFieldString(self))

      if not ShotgunORM.config.DISABLE_FIELD_VALIDATE_ON_SET_VALUE:
        self.validate(forReal=True)

      if sgData == None:
        sgData = self.defaultValue()

      updateResult = self._setValue(sgData)

      if not updateResult:
        if not self.isValid():
          self.setValid(True)

        return False

      self.setValid(True)
      self.setHasCommit(True)

      self.changed()

      return True
Example #4
0
    def fromFieldData(self, sgData):
        '''
    Sets the fields value from data returned by a Shotgun query.

    Returns True on success.

    Args:
      * (dict) sgData:
        Dict of Shotgun formatted Entity field values.
    '''

        with self:
            ShotgunORM.LoggerField.debug('%(sgField)s.fromFieldData()',
                                         {'sgField': self})
            ShotgunORM.LoggerField.debug('    * sgData: %(sgData)s',
                                         {'sgData': sgData})

            parent = self.parentEntity()

            if not self.isEditable():
                raise RuntimeError('%s is not editable!' %
                                   ShotgunORM.mkEntityFieldString(self))

            if not ShotgunORM.config.DISABLE_FIELD_VALIDATE_ON_SET_VALUE:
                self.validate(forReal=True)

            result = self._fromFieldData(sgData)

            if not result:
                return False

            self.setValid(True)
            self.setHasCommit(True)

            self.changed()

            return True
Example #5
0
 def __repr__(self):
     return '<%s>' % ShotgunORM.mkEntityFieldString(self)
Example #6
0
 def __repr__(self):
   return '<%s>' % ShotgunORM.mkEntityFieldString(self)