Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions import_export/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ def generate_log_entries(self, result, request):
}
content_type_id = ContentType.objects.get_for_model(self.model).pk
for row in result:
if row.import_type in logentry_map.keys():
if row.import_type in logentry_map:
with warnings.catch_warnings():
if django.VERSION >= (5,):
from django.utils.deprecation import (
Expand Down Expand Up @@ -584,9 +584,10 @@ def _create_log_entries(self, user_pk, rows):
RowResult.IMPORT_TYPE_UPDATE: CHANGE,
RowResult.IMPORT_TYPE_DELETE: DELETION,
}
missing = object()
for import_type, instances in rows.items():
if import_type in logentry_map.keys():
action_flag = logentry_map[import_type]
action_flag = logentry_map.get(import_type, missing)
if action_flag is not missing:
self._create_log_entry(
user_pk, rows[import_type], import_type, action_flag
)
Expand Down
2 changes: 1 addition & 1 deletion import_export/declarative.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ def __new__(cls, name, bases, attrs):
if opts.exclude and f.name in opts.exclude:
continue

if f.name in set(declared_fields.keys()):
if f.name in declared_fields:
# If model field is declared in `ModelResource`,
# remove it from `declared_fields`
# to keep exact order of model fields
Expand Down
12 changes: 8 additions & 4 deletions import_export/resources.py
Original file line number Diff line number Diff line change
Expand Up @@ -424,9 +424,11 @@ def import_field(self, field, instance, row, is_m2m=False, **kwargs):

def get_import_fields(self):
import_fields = []
missing = object()
for field_name in self.get_import_order():
if field_name in self.fields:
import_fields.append(self.fields[field_name])
field = self.fields.get(field_name, missing)
if field is not missing:
import_fields.append(field)
continue
# issue 1815
# allow for fields to be referenced by column_name in `fields` list
Expand Down Expand Up @@ -1101,8 +1103,10 @@ def export(self, queryset=None, **kwargs):

def _select_field(self, target_field_name):
# select field from fields based on either declared name or column name
if target_field_name in self.fields:
return self.fields[target_field_name]
missing = object()
field = self.fields.get(target_field_name, missing)
if field is not missing:
return field

for field_name, field in self.fields.items():
if target_field_name == field.column_name:
Expand Down