我使用django-import-export从我的django模型备份了CSV文件,我想将其恢复到我的模型我该怎么做? 当我想为每个人创建对象时,我的外键有问题。
id,name,address,job,KBSE
1,Hamid,3,Doctor,4311
2,Ali,7,Artist,5343
3,Reza,2,Singer,5232
答案 0 :(得分:2)
见Import data workflow。大多数函数都可以在资源子类中重写。如果这没有帮助,请打开问题。
答案 1 :(得分:0)
您应该按正确的顺序导入表格,确保先输入您所依赖的所有数据。
因此加载外来表并加载当前表。如果您没有外国数据,而其中一些数据已被删除,则必须重新创建。
祝你好运!答案 2 :(得分:0)
您可以使用使用 pandas 的自定义 python 脚本将 csv 数据加载到 Django 模型中。
#First define your Django Enviromental variables
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DjangoProjectName.settings")
import django
django.setup()
import pandas as pd
import numpy as np
#Import Required Django model
from djangoApp.models import * #models
# Import CSV file
df = pd.read_csv('csv_url.csv')
# Do required pre-processing on panda dataframe
# such as data cleaning, data format settings etc..
# Iterater throught panda dataframe and save data in Django model
for index, row in df.iterrows():
# create django model
samplemodelObject = SampleModel()
# Normal Fields ( Non-foreign key fields) adding
samplemodelObject.field_name01 = row['Field_01']
# Adding Foreign Key Field
samplemodelObject.field_foreignkey = ForeignKeyModel.objects.get( fk_key = row['fk_value_field']
# save data model instance
samplemodelObject.save()
samplemodelObject.clear()