'Return True if data differs from initial.'

def _has_changed(self, initial, data):

    initial_value = (initial if (initial is not None) else u'')
    try:
        data = self.to_python(data)
    except ValidationError:
        return True
    data_value = (data if (data is not None) else u'')
    return (initial_value != data_value)
