diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-07-22 18:22:54 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-25 12:06:02 +0200 |
commit | 5af75993e44d3beabb7b214c81f6453ab77a5c89 (patch) | |
tree | e635ca296c69b623236c56083c09de3c706ca167 /ishtar_common/admin.py | |
parent | d62b140949294a3939eb6095206aef416e188806 (diff) | |
download | Ishtar-5af75993e44d3beabb7b214c81f6453ab77a5c89.tar.bz2 Ishtar-5af75993e44d3beabb7b214c81f6453ab77a5c89.zip |
Preventive file: work on inlines - 2
Diffstat (limited to 'ishtar_common/admin.py')
-rw-r--r-- | ishtar_common/admin.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index bbd61f14b..b21503c35 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -46,6 +46,7 @@ from django.contrib.gis.geos import GEOSGeometry, MultiPolygon from django.contrib.gis.gdal.error import GDALException from django.contrib.gis.geos.error import GEOSException from django.core.cache import cache +from django.core.exceptions import FieldError from django.core.serializers import serialize from django.core.urlresolvers import reverse from django.db.models.fields import ( @@ -575,11 +576,14 @@ class ImportActionAdmin(admin.ModelAdmin): elif isinstance(field, ForeignKey): if value: model = field.rel.to - try: - value = model.objects.get(**{slug_col: value}) - except model.DoesNotExist: - missing_parent.append(row.pop(k)) - continue + for slug_col2 in self.import_keys: + try: + value = model.objects.get(**{slug_col2: value}) + except FieldError: + continue + except model.DoesNotExist: + missing_parent.append(row.pop(k)) + break else: value = None row[k] = value |