diff options
| author | Claude Paroz <claude@2xlibre.net> | 2015-02-27 18:19:56 +0100 |
|---|---|---|
| committer | Claude Paroz <claude@2xlibre.net> | 2015-02-27 20:23:07 +0100 |
| commit | 5cf96b49e43daea6d4a0ba1c80c45e90c74f4e47 (patch) | |
| tree | d5c92d3a8eb9247905a67ae04eb1ec5195218049 /django | |
| parent | 2b19b3a031e7d5b5264bc9e880d0192301289bc2 (diff) | |
Fixed #24418 -- Prevented crash in refresh_from_db with null fk
Thanks Johannes Lerch for the report, Tim Graham for the test case,
and Simon Charette for the review.
Diffstat (limited to 'django')
| -rw-r--r-- | django/db/models/base.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/django/db/models/base.py b/django/db/models/base.py index a505efa87d..cb1d37f9df 100644 --- a/django/db/models/base.py +++ b/django/db/models/base.py @@ -596,7 +596,7 @@ class Model(six.with_metaclass(ModelBase)): if field.rel and field.get_cache_name() in self.__dict__: rel_instance = getattr(self, field.get_cache_name()) local_val = getattr(db_instance, field.attname) - related_val = getattr(rel_instance, field.related_field.attname) + related_val = None if rel_instance is None else getattr(rel_instance, field.related_field.attname) if local_val != related_val: del self.__dict__[field.get_cache_name()] self._state.db = db_instance._state.db |
