diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-07-22 18:22:54 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-07-29 11:56:34 +0200 |
commit | 7e1b10f0645539698b3aad3512a5e865dd56522f (patch) | |
tree | 272169633833554b81ab51336c3ebe41bb714e8a /ishtar_common/admin.py | |
parent | cc6d9d22d724fb39a5b7d30255e6bab2adc78763 (diff) | |
download | Ishtar-7e1b10f0645539698b3aad3512a5e865dd56522f.tar.bz2 Ishtar-7e1b10f0645539698b3aad3512a5e865dd56522f.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 |