json 中的 django HttpResponse
django HttpResponse in json
我有一个看法:
def add_view(request):
if request.method == "POST":
files = request.FILES.getlist("file")
response_data = {}
for file in files:
my_model = MyModel()
my_model.my_file = file
my_model.save()
id_info = my_model.id
response_data.append(id_info)
return HttpResponse(json.dumps(response_data), content_type="application/json")
假设有 5 个文件,那么我想通过 json 发送 5 个文件的 ID 作为响应。这里说的是赋值前引用的局部变量response_data。
我要发送所有 5 个文件的 ID。如何做到这一点?
首先,您在 if
内部定义了 response_data = {}
,而您的 return response
在外部,因为您得到了 response_data referenced before assignment
错误。
其次,dict没有append()
方法。您应该将 responde_data
声明为列表
def add_view(request):
response_data = []
if request.method == "POST":
files = request.FILES.getlist("file")
for file in files:
my_model = MyModel()
my_model.my_file = file
my_model.save()
id_info = my_model.id
response_data.append(id_info)
return HttpResponse(json.dumps(response_data), content_type="application/json")
我有一个看法:
def add_view(request):
if request.method == "POST":
files = request.FILES.getlist("file")
response_data = {}
for file in files:
my_model = MyModel()
my_model.my_file = file
my_model.save()
id_info = my_model.id
response_data.append(id_info)
return HttpResponse(json.dumps(response_data), content_type="application/json")
假设有 5 个文件,那么我想通过 json 发送 5 个文件的 ID 作为响应。这里说的是赋值前引用的局部变量response_data。
我要发送所有 5 个文件的 ID。如何做到这一点?
首先,您在 if
内部定义了 response_data = {}
,而您的 return response
在外部,因为您得到了 response_data referenced before assignment
错误。
其次,dict没有append()
方法。您应该将 responde_data
声明为列表
def add_view(request):
response_data = []
if request.method == "POST":
files = request.FILES.getlist("file")
for file in files:
my_model = MyModel()
my_model.my_file = file
my_model.save()
id_info = my_model.id
response_data.append(id_info)
return HttpResponse(json.dumps(response_data), content_type="application/json")