From: Joseph Spiros Date: Wed, 1 Feb 2012 00:04:02 +0000 (-0500) Subject: Fixed an exception with JSONAttributes using DateField or DateTimeField as their... X-Git-Tag: philo-0.9.2^2~1 X-Git-Url: http://git.ithinksw.org/philo.git/commitdiff_plain/b639b27fcefa205df835662bec0909e3f0d81b99 Fixed an exception with JSONAttributes using DateField or DateTimeField as their field template when the stored value is None. Fixes #178. --- diff --git a/philo/models/fields/entities.py b/philo/models/fields/entities.py index 0558d3e..167fd39 100644 --- a/philo/models/fields/entities.py +++ b/philo/models/fields/entities.py @@ -2,7 +2,7 @@ import datetime from itertools import tee from django import forms -from django.core.exceptions import FieldError +from django.core.exceptions import FieldError, ValidationError from django.db import models from django.db.models.fields import NOT_PROVIDED from django.utils.text import capfirst @@ -193,7 +193,10 @@ class JSONAttribute(AttributeProxyField): """If the field template is a :class:`DateField` or a :class:`DateTimeField`, this will convert the default return value to a datetime instance.""" value = super(JSONAttribute, self).value_from_object(obj) if isinstance(self.field_template, (models.DateField, models.DateTimeField)): - value = self.field_template.to_python(value) + try: + value = self.field_template.to_python(value) + except ValidationError: + value = None return value def get_storage_value(self, value):