如何将值作为字符串传递给ForeignKey而不是整数?

时间:2019-02-26 03:35:04

标签: django foreign-keys

IMPORT PHOTO

我试图将admin中的模型导入到csv文件中,并且外键的输出为整数(请参见上面照片中的Department和Status字段)。如何将其转换为字符串?

1 个答案:

答案 0 :(得分:0)

您可以检查如何添加关系字段the documentation。它建议添加两个类:用于定义要导出哪些字段的资源类,以及将资源类连接到管理界面的管理类。就您而言,admin.py可能像

from django.contrib import admin
from models import *
from import_export.admin import ImportExportModelAdmin
from import_export import resources

class HrmResource(resources.ModelResource):

    class Meta:
        model = hrm
        fields = ('name', 'place', 'department__nm_dept')

class HrmAdmin(ImportExportModelAdmin):
    resource_class = HrmResource

admin.site.register(r_dept)
admin.site.register(hrm, HrmAdmin)

models.py之类的

from django.db import models

class r_dept(models.Model):
    nm_dept = models.CharField(max_length=200)
    def __str__(self):
        return self.nm_dept

class hrm(models.Model):
    name = models.CharField(max_length=200)
    place = models.CharField(max_length=200)
    department = models.ForeignKey('r_dept')
    def __str__(self):
        return self.name