custom code for PublicContact to not communicate with Registry on import

This commit is contained in:
David Kennedy 2024-06-01 09:43:32 -04:00
parent 7c50b5fc2a
commit 9f973938a3
No known key found for this signature in database
GPG key ID: 6528A5386E66B96B
3 changed files with 44 additions and 4 deletions

View file

@ -30,7 +30,7 @@ from django.utils.safestring import mark_safe
from django.utils.html import escape
from django.contrib.auth.forms import UserChangeForm, UsernameField
from django_admin_multiple_choice_list_filter.list_filters import MultipleChoiceListFilter
from import_export import resources
from import_export import resources, results
from import_export.admin import ImportExportModelAdmin
from django.utils.translation import gettext_lazy as _
@ -2251,6 +2251,46 @@ class PublicContactResource(resources.ModelResource):
class Meta:
model = models.PublicContact
def import_row(
self,
row,
instance_loader,
using_transactions=True,
dry_run=False,
raise_errors=None,
**kwargs
):
"""Override kwargs skip_epp_save and set to True"""
kwargs['skip_epp_save'] = True
return super().import_row(
row,
instance_loader,
using_transactions=using_transactions,
dry_run=dry_run,
raise_errors=raise_errors,
**kwargs
)
def save_instance(
self, instance, is_create, using_transactions=True, dry_run=False
):
"""Override save_instance setting skip_epp_save to True
"""
self.before_save_instance(instance, using_transactions, dry_run)
if self._meta.use_bulk:
if is_create:
self.create_instances.append(instance)
else:
self.update_instances.append(instance)
else:
if not using_transactions and dry_run:
# we don't have transactions and we want to do a dry_run
pass
else:
instance.save(skip_epp_save=True)
self.after_save_instance(instance, using_transactions, dry_run)
class PublicContactAdmin(ListHeaderAdmin, ImportExportModelAdmin):
"""Custom PublicContact admin class."""