【发布时间】:2018-04-05 02:40:44
【问题描述】:
我正在将 csv 文件上传到 django 模型,使用以下代码可以正常工作
def upload_csv(request):
if request.method == 'POST' and request.FILES['csv_file']:
myfile = request.FILES['csv_file']
fs = FileSystemStorage()
filename = fs.save(myfile.name, myfile)
data = csv.reader(fs.open(filename, mode='r'))
for row in data:
if row[0] != 'FP_Item':
post = FP()
post.FP_Item = row[0]
post.save()
messages.success(request, "FP uploaded to Database")
queryset_list = FP.objects.all()
context = {'object_list': queryset_list}
return render(request, 'index.html', context)
我需要的是防止重复进入数据库。当我看到重复字段时,我需要继续而不用 post.save() 保存,所以我按照下面的方法修改了我的代码,但即使它是重复的,仍然保存。代码也没有错误。我在做什么错?
for row in data:
queryset_list = FP.objects.all()
if row[0] != 'FP_Item':
if row[0] == queryset_list.filter(FP_Item__contains=row[0]):
continue
post = FP()
post.FP_Item = row[0]
post.save()
【问题讨论】:
标签: django csv duplicates