Merge remote-tracking branch 'origin/pr/349' into 349
This commit is contained in:
commit
ea53612822
@ -82,6 +82,12 @@ class BaseField(object):
|
||||
def __set__(self, instance, value):
|
||||
"""Descriptor for assigning a value to a field in a document.
|
||||
"""
|
||||
if value is None:
|
||||
value = self.default
|
||||
# Allow callable default values
|
||||
if callable(value):
|
||||
value = value()
|
||||
|
||||
if instance._initialised:
|
||||
try:
|
||||
if (self.name not in instance._data or
|
||||
|
@ -49,6 +49,19 @@ class FieldTest(unittest.TestCase):
|
||||
self.assertEqual(person._fields['age'].help_text, "Your real age")
|
||||
self.assertEqual(person._fields['userid'].verbose_name, "User Identity")
|
||||
|
||||
class Person2(Document):
|
||||
created = DateTimeField(default=datetime.datetime.utcnow)
|
||||
|
||||
person = Person2()
|
||||
date1 = person.created
|
||||
date2 = person.created
|
||||
self.assertEqual(date1, date2)
|
||||
|
||||
person = Person2(created=None)
|
||||
date1 = person.created
|
||||
date2 = person.created
|
||||
self.assertEqual(date1, date2)
|
||||
|
||||
def test_required_values(self):
|
||||
"""Ensure that required field constraints are enforced.
|
||||
"""
|
||||
|
Loading…
x
Reference in New Issue
Block a user