Python 3.x 将CSV作为数据库Django导入
我正在尝试从CSV文件导入数据。我正在使用以下代码:Python 3.x 将CSV作为数据库Django导入,python-3.x,django,database,django-models,frameworks,Python 3.x,Django,Database,Django Models,Frameworks,我正在尝试从CSV文件导入数据。我正在使用以下代码: from django.db import models import csv # Create your models here. class Image(models.Model): name = models.IntegerField() # field - instance - row description = models.TextField(max_length=700) # field - instanc
from django.db import models
import csv
# Create your models here.
class Image(models.Model):
name = models.IntegerField() # field - instance - row
description = models.TextField(max_length=700) # field - instance - row
mode = models.CharField(max_length=255) # field - instance - row
celltype = models.CharField(max_length=255) # field - instance - row
component = models.CharField(max_length=255) # field - instance - row
doi = models.CharField(max_length=255) # field - instance - row
organism = models.CharField(max_length=255) # field - instance - row
def deleteAll(self):
for img in self.objects.all():
img.delete()
def ImportData(self):
path = '/Users/macbookair/Downloads/source_project/images.csv'
reader = csv.reader(open(path), delimiter=";", quotechar='"')
next(reader)
for row in reader:
print(row)
image = Image()
image.name = row[1]
image.description = row[2]
image.mode = row[3]
image.celltype = row[4]
image.component = row[5]
image.doi = row[6]
image.organism = row[7]
image.save()
我的CSV文件如下所示:
但当我去控制台检查我的图像模型时,我发现它是空的!
我这样检查:
在控制台中:
python manage.py shell
from myApp.models import Image
image.objects.all()
我得到:
我已经使用以下方法进行了迁移:
python manage.py makemigrations myApp
python manage.py迁移
我遗漏了什么吗?在哪里调用
ImportData
方法?Django不会自动处理您定义的每种方法。请考虑使用<代码> Django导入导出< /C>()。它使生活更容易。