`django-import-export` обновляет данные с последующими отношениями модели, такими как `author__name

Код ниже успешно экспортирует данные пользователя с именем отдела, удается импортировать часть данных, но не обновить данные отдела.

Мне нужно расширить модель пользователя

Как исправить это для импорта данных?

Помогите, спасибо...

# pip install django-import-export
from django.contrib import admin
from django.contrib.auth import get_user_model
from django.contrib.auth.admin import UserAdmin
from django.db import models
from import_export import fields, resources
from import_export.admin import ImportExportModelAdmin
from import_export.widgets import ForeignKeyWidget


class Department(models.Model):
    name = models.CharField(max_length=180, blank=True, null=True, )


class User(get_user_model()):
    class Meta:
        proxy = True


class HseUser(models.Model):
    user = models.OneToOneField(User, on_delete=models.SET_NULL,  null=True, blank=True)
    dept = models.ForeignKey(Department, on_delete=models.CASCADE, blank=True, null=True, )
    name = models.CharField(max_length=180, blank=True, null=True, )


class UserResource(resources.ModelResource):
    name = fields.Field(attribute='hseuser', widget=ForeignKeyWidget(HseUser, 'name'))
    dept = fields.Field(attribute='hseuser__dept', widget=ForeignKeyWidget(Department, 'name'))

    class Meta:
        model = User
        exclude = ['id']
        import_id_fields = ['username', 'name']
        fields = ['username', 'dept', 'email', ]


class MyUserAdmin(UserAdmin, ImportExportModelAdmin):
    resource_class = UserResource
    fieldsets = (
        (None, {'fields': ('username', 'password')}),
    )


admin.site.register(Department)
admin.site.register(HseUser)
admin.site.register(User, MyUserAdmin)
Вернуться на верх