Fixed inconsistency handling None values field attrs
fixes hmarr/mongoengine#505
This commit is contained in:
parent
3d0d2f48ad
commit
9fecf2b303
4 changed files with 2 additions and 9 deletions
|
|
@ -833,13 +833,6 @@ class BaseDocument(object):
|
|||
if hasattr(self, '_changed_fields'):
|
||||
self._mark_as_changed(name)
|
||||
|
||||
# Handle None values for required fields
|
||||
if value is None and name in getattr(self, '_fields', {}):
|
||||
self._data[name] = value
|
||||
if hasattr(self, '_changed_fields'):
|
||||
self._mark_as_changed(name)
|
||||
return
|
||||
|
||||
if not self._created and name in self._meta.get('shard_key', tuple()):
|
||||
from queryset import OperationError
|
||||
raise OperationError("Shard Keys are immutable. Tried to update %s" % name)
|
||||
|
|
|
|||
|
|
@ -369,7 +369,7 @@ class ComplexDateTimeField(StringField):
|
|||
return self._convert_from_string(data)
|
||||
|
||||
def __set__(self, instance, value):
|
||||
value = self._convert_from_datetime(value)
|
||||
value = self._convert_from_datetime(value) if value else value
|
||||
return super(ComplexDateTimeField, self).__set__(instance, value)
|
||||
|
||||
def validate(self, value):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue