Python 如何使用CSV文件将数据导入或上载到Django中的数据库模型?
我创建了一个基于世界地图的web应用程序,当用户单击特定国家时,它会返回与特定国家相关的信息: 应用程序背后运行的模型是: Models.pyPython 如何使用CSV文件将数据导入或上载到Django中的数据库模型?,python,django-models,django-admin,Python,Django Models,Django Admin,我创建了一个基于世界地图的web应用程序,当用户单击特定国家时,它会返回与特定国家相关的信息: 应用程序背后运行的模型是: Models.py from __future__ import unicode_literals from django.db import models class Country(models.Model): name = models.CharField(max_length=200) def __unicode__(self):
from __future__ import unicode_literals
from django.db import models
class Country(models.Model):
name = models.CharField(max_length=200)
def __unicode__(self):
return self.name
class CountryDetails(models.Model):
country = models.ForeignKey(Country)
T_attack = models.PositiveIntegerField(verbose_name="attack")
year = models.CharField(max_length=254)
Deaths = models.CharField(max_length=254)
NEWS_ID = models.CharField(max_length=254, verbose_name="NEWS_ID")
def __unicode__(self):
return self.Deaths
并保存如下给定的数据,这是一个演示数据,由管理员用户界面淡出:
name T_attack year Deaths News_ID
India 12 2006 12 NDTV
India 110 2009 1 DEAN
PAKISTAN 9 2002 10 XYZT
PAKISTAN 11 2021 11 XXTV
India 12 2023 120 NDNV
India 10 2012 12 DEAN
PAKISTAN 12 2022 12 DLRS
Canada 1 2001 1 DLTV
USA 2 2011 13 NTTV
我已经完成了应用程序,现在我有一个.csv文件,其中包含类似格式的数据,大约500行
在几篇文章中,我看到一些建议,说django import-export是用于此目的的正确选择,但不幸的是,我无法实现用于此目的的“django import-export”导入方法
因此,我决定编写一个手动代码,使用“djangoshell”循环所有行,如下所示
f = open(my_csv_file.csv)
lines = f.readlines()
For i,l in enumerate(lines):
l.split(',')[0]
c = Country.objects.create(name=l.split(',')[0])
CountryDetails.objects.create(country=c,T_attack=l.split(',')[1],year=l.split(',')[2],Deaths=l.split(',')[3],News_ID=l.split(',')[4])
但是这个方法将场景聚集在一起,不能像我用AdminInter-phase手动添加的那样添加数据