Django "не возвратил объект HttpResponse."
когда я вызываю runDelete, тогда он вызывает вызов, поэтому почему "представление не возвратило объект HttpResponse"?
спасибо:)
views.py
def run(request, build):
run_list = []
target_dict = {}
target_num = 0
build_id = 0
all_run_list = TestRun.objects.all().order_by('id')
for run in all_run_list:
build_version = run.build.version
build_number = run.build.number
run_build = build_version + '.' + build_number
if (build==run_build):
run_list.append(run)
return render_to_response('run.html', {'run_list': run_list})
def runDelete(request):
run_list = request.POST.getlist('var_delete')
build_id = request.POST.get('build_id')
for run2 in run_list:
run2 = int(run2)
build_id = int(build_id)
build_obj = Build.objects.get(id=build_id)
build_version = build_obj.version
build_number = build_obj.number
build = build_version + '.' + build_number
run(request, build)
Ответы
Ответ 1
Ожидается, что представления Django возвратят объекты HttpResponse
. Ваше мнение вызывает run
, но оно ничего не возвращает (помните, что функции Python возвращают None
в отсутствие оператора, явно возвращающего что-то другое). Измените эту строку следующим образом:
run(request, build)
в
return run(request, build)
Конечно, это будет работать, только если run
возвращает экземпляр HttpResponse
.