Here are the examples of the python api django.db.models.DateField taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
26 Examples
3
View Complete Implementation : checks.py
Copyright Apache License 2.0
Author : drexly
Copyright Apache License 2.0
Author : drexly
def _check_date_hierarchy(self, obj):
""" Check that date_hierarchy refers to DateField or DateTimeField. """
if obj.date_hierarchy is None:
return []
else:
try:
field = obj.model._meta.get_field(obj.date_hierarchy)
except FieldDoesNotExist:
return refer_to_missing_field(option='date_hierarchy',
field=obj.date_hierarchy,
model=obj.model, obj=obj, id='admin.E127')
else:
if not isinstance(field, (models.DateField, models.DateTimeField)):
return must_be('a DateField or DateTimeField', option='date_hierarchy',
obj=obj, id='admin.E128')
else:
return []
3
View Complete Implementation : converter.py
Copyright MIT License
Author : eamigo86
Copyright MIT License
Author : eamigo86
@convert_django_field.register(models.DateField)
def convert_date_to_string(field, registry=None, input_flag=None, nested_field=False):
return CustomDate(
description=field.help_text or field.verbose_name,
required=is_required(field) and input_flag == "create",
)
3
View Complete Implementation : validation.py
Copyright Apache License 2.0
Author : edisonlz
Copyright Apache License 2.0
Author : edisonlz
def validate_date_hierarchy(self, cls, model):
" Validate that date_hierarchy refers to DateField or DateTimeField. "
if cls.date_hierarchy:
f = get_field(cls, model, 'date_hierarchy', cls.date_hierarchy)
if not isinstance(f, (models.DateField, models.DateTimeField)):
raise ImproperlyConfigured("'%s.date_hierarchy is "
"neither an instance of DateField nor DateTimeField."
% cls.__name__)
3
View Complete Implementation : tests.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
@unittest.skipUnless(connection.vendor == 'postgresql', "PostgreSQL specific SQL used")
def test_birthdate_month(self):
a1 = Author.objects.create(name='a1', birthdate=date(1981, 2, 16))
a2 = Author.objects.create(name='a2', birthdate=date(2012, 2, 29))
a3 = Author.objects.create(name='a3', birthdate=date(2012, 1, 31))
a4 = Author.objects.create(name='a4', birthdate=date(2012, 3, 1))
with register_lookup(models.DateField, InMonth):
self.astertSequenceEqual(Author.objects.filter(birthdate__inmonth=date(2012, 1, 15)), [a3])
self.astertSequenceEqual(Author.objects.filter(birthdate__inmonth=date(2012, 2, 1)), [a2])
self.astertSequenceEqual(Author.objects.filter(birthdate__inmonth=date(1981, 2, 28)), [a1])
self.astertSequenceEqual(Author.objects.filter(birthdate__inmonth=date(2012, 3, 12)), [a4])
self.astertSequenceEqual(Author.objects.filter(birthdate__inmonth=date(2012, 4, 1)), [])
3
View Complete Implementation : tests.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_date_field(self):
field = models.DateField()
name, path, args, kwargs = field.deconstruct()
self.astertEqual(path, "django.db.models.DateField")
self.astertEqual(args, [])
self.astertEqual(kwargs, {})
field = models.DateField(auto_now=True)
name, path, args, kwargs = field.deconstruct()
self.astertEqual(path, "django.db.models.DateField")
self.astertEqual(args, [])
self.astertEqual(kwargs, {"auto_now": True})
3
View Complete Implementation : test_ranges.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_date_range_contains(self):
filter_args = (
self.timestamps[1],
(self.dates[1], self.dates[2]),
Value(self.dates[0], output_field=DateField()),
Func(F('timestamps'), function='lower', output_field=DateField()),
)
for filter_arg in filter_args:
with self.subTest(filter_arg=filter_arg):
self.astertCountEqual(
RangesModel.objects.filter(**{'dates__contains': filter_arg}),
[self.obj, self.aware_obj],
)
3
View Complete Implementation : test_error_messages.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_date_field_raises_error_message(self):
f = models.DateField()
self._test_validation_messages(
f, 'fõo',
["'fõo' value has an invalid date format. It must be in YYYY-MM-DD format."]
)
self._test_validation_messages(
f, 'aaaa-10-10',
["'aaaa-10-10' value has an invalid date format. It must be in YYYY-MM-DD format."]
)
self._test_validation_messages(
f, '2011-13-10',
["'2011-13-10' value has the correct format (YYYY-MM-DD) but it is an invalid date."]
)
self._test_validation_messages(
f, '2011-10-32',
["'2011-10-32' value has the correct format (YYYY-MM-DD) but it is an invalid date."]
)
3
View Complete Implementation : tests.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_custom_name_lookup(self):
a1 = Author.objects.create(name='a1', birthdate=date(1981, 2, 16))
Author.objects.create(name='a2', birthdate=date(2012, 2, 29))
with register_lookup(models.DateField, YearTransform), \
register_lookup(models.DateField, YearTransform, lookup_name='justtheyear'), \
register_lookup(YearTransform, Exactly), \
register_lookup(YearTransform, Exactly, lookup_name='isactually'):
qs1 = Author.objects.filter(birthdate__testyear__exactly=1981)
qs2 = Author.objects.filter(birthdate__justtheyear__isactually=1981)
self.astertSequenceEqual(qs1, [a1])
self.astertSequenceEqual(qs2, [a1])
3
View Complete Implementation : test_cast.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_cast_from_db_datetime_to_date(self):
dt_value = datetime.datetime(2018, 9, 28, 12, 42, 10, 234567)
DTModel.objects.create(start_datetime=dt_value)
dtm = DTModel.objects.annotate(
start_datetime_as_date=Cast('start_datetime', models.DateField())
).first()
self.astertEqual(dtm.start_datetime_as_date, datetime.date(2018, 9, 28))
3
View Complete Implementation : test_cast.py
Copyright GNU Affero General Public License v3.0
Author : nesdis
Copyright GNU Affero General Public License v3.0
Author : nesdis
def test_cast_from_db_datetime_to_date_group_by(self):
author = Author.objects.create(name='John Smith', age=45)
dt_value = datetime.datetime(2018, 9, 28, 12, 42, 10, 234567)
Fan.objects.create(name='Margaret', age=50, author=author, fan_since=dt_value)
fans = Fan.objects.values('author').annotate(
fan_for_day=Cast('fan_since', models.DateField()),
fans=models.Count('*')
).values()
self.astertEqual(fans[0]['fan_for_day'], datetime.date(2018, 9, 28))
self.astertEqual(fans[0]['fans'], 1)