django.db.models.DateField - python examples

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 7

3 View Complete Implementation : checks.py
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
@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
    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
    @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
    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
    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
    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
    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
    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
    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)