Django CSV只录制第一条记录
我一直在我的CSV上传工作了一段时间,我终于让它工作了(有点哈哈),因为它现在是这样的,我的代码只会从CSV文件中提取第一条记录,我看它太久了,我确信我错过了一些东西。这是我的观点Django CSV只录制第一条记录,django,csv,django-views,Django,Csv,Django Views,我一直在我的CSV上传工作了一段时间,我终于让它工作了(有点哈哈),因为它现在是这样的,我的代码只会从CSV文件中提取第一条记录,我看它太久了,我确信我错过了一些东西。这是我的观点 @login_required def importClient(request): print "its being called" if request.FILES: form = ImportClientForm(request.POST, request.FILES) if form.is_v
@login_required
def importClient(request):
print "its being called"
if request.FILES:
form = ImportClientForm(request.POST, request.FILES)
if form.is_valid():
print "its valid!!"
if '.csv' in request.FILES['contact_file'].name:
print "It's a CSV file!!!"
importfile = csv.DictReader(request.FILES['contact_file'])
for row in importfile:
#establish client name
cn = row.get('Customer', None)
c = Clients(
client_name = cn,
phone = "",
phone_cell = "",
fax = "",
email = "",
add_1 = "",
add_2 = "",
city = "",
province = "",
country = "",
postal = "",
)
#check to see if client exists already
already_there = Clients.objects.filter(client_name = cn)[:1]
if not already_there:
c.save()
return HttpResponseRedirect('/clients/')
else:
form = ImportClientForm()
return render_to_response('clients/importClients.html', {
'form': form}, context_instance=RequestContext(request))
是不是有什么我遗漏了,我相信这很简单
谢谢,
Steve取消输入以下行:
return HttpResponseRedirect('/clients/')
将其放入importfile:循环中的
for行,使代码在第一次迭代后返回HTTP响应。取消插入以下行:
return HttpResponseRedirect('/clients/')
您将它放在importfile:
循环中的for行中,使您的代码在第一次迭代后返回HTTP响应。哇,这就是为什么我想在这里发表文章,以获得一双新鲜的眼睛。非常感谢,这正是问题所在。有时候,压痕不是划分块的最简单方法;)@KevinDTimm:大多数时候,在同一个函数中嵌套太多会使跟踪“嵌套深度”变得很困难,而不依赖于缩进。哇,这就是为什么我想在这里发表文章,以获得一双新鲜的眼睛。非常感谢,这正是问题所在。有时候,压痕不是划分块的最简单方法;)@KevinDTimm:大多数情况下,在同一个函数中嵌套过多会使跟踪“嵌套深度”变得困难,而与缩进无关。