Example #1
0
    def to_python(self, value):
        if value is None:
            return value
        if isinstance(value, datetime):
            return value.date()
        if isinstance(value, date):
            return value

        if isinstance(value, basestring):
            try:
                return isodate.parse_iso_date(value)
            except isodate.InvalidFormat:
                raise ValidationError('invalid_format', self)
            except isodate.InvalidDate:
                raise ValidationError('invalid', self)
Example #2
0
    def to_python(self, value):
        if value is None:
            return value
        if isinstance(value, datetime):
            return value.date()
        if isinstance(value, date):
            return value

        if isinstance(value, basestring):
            try:
                return isodate.parse_iso_date(value)
            except isodate.InvalidFormat:
                raise ValidationError('invalid_format', self)
            except isodate.InvalidDate:
                raise ValidationError('invalid', self)
Example #3
0
    def to_python(self, value):
        if value is None:
            return value
        if isinstance(value, datetime):
            return value
        if isinstance(value, date):
            return datetime(value.year, value.month, value.day)

        if isinstance(value, basestring):
            try:
                return isodate.parse_iso_datetime(value)
            except isodate.InvalidFormat:
                # we also accept a date-only string
                try:
                    return isodate.parse_iso_date(value)
                except isodate.InvalidFormat:
                    raise ValidationError('invalid_format', self)
            except isodate.InvalidDate:
                raise ValidationError('invalid', self)
Example #4
0
    def to_python(self, value):
        if value is None:
            return value
        if isinstance(value, datetime):
            return value
        if isinstance(value, date):
            return datetime(value.year, value.month, value.day)

        if isinstance(value, basestring):
            try:
                return isodate.parse_iso_datetime(value)
            except isodate.InvalidFormat:
                # we also accept a date-only string
                try:
                    return isodate.parse_iso_date(value)
                except isodate.InvalidFormat:
                    raise ValidationError('invalid_format', self)
            except isodate.InvalidDate:
                raise ValidationError('invalid', self)