- November 10, 2010
- DoesNotExist OneToOne OneToOneField
- 1 (after 1 ratings)
Since django insists on throwing a DoesNotExist rather than just returning a None from the far side of a null OneToOneField, I wrote this to have a sane way of getting those fields out without having to try/except all over in my code.
1 2 3 4 5 6 7 8
from django.core.exceptions import ObjectDoesNotExist def get_onetoone_or_none(obj, attr): """ Instead of letting django throw and exception, return None when a OneToOneField is null """ try: return getattr(obj, attr) except ObjectDoesNotExist: return None