Python の経験が限られているため、Django を初めて使用します。Form と Formset を編集しようとしています。フォームを編集して保存することはできますが、フォームセットで編集内容を保存することができません。ビューからの私のコードは次のとおりです。
@login_required
def edit_asr(request, asr_id):
context = RequestContext(request)
if not is_editor(request):
return HttpResponse("You are not authorized to view this record")
if request.method == 'POST':
asr_record = ASR.objects.get(id=asr_id)
form = BuildASRForm(request.POST, instance=asr_record)
formset = ASRTripLegFormset(request.POST, instance=asr_record)
if form.is_valid():
form.save(commit=True)
logger.info("ASR %s was edited by %s" % (asr_id, request.user))
return HttpResponseRedirect('/asr/%s/' % asr_id)
else:
logger.error("Edit ASR form returned the following errors for user %s: %s" % (request.user, form.errors))
else:
asr_record = ASR.objects.get(id=asr_id)
form = BuildASRForm(instance=asr_record)
formset = ASRTripLegFormset(instance=asr_record)
return render_to_response('asr/edit_asr.html', {'form': form, 'formset': formset, 'asr_id':asr_id}, context)
if formset.is_valid():
ステートメントの下にインデントされた呼び出しを試みましif form-is_valid():
たが、エラーがスローされMultiValueDictKeyError
ます。これが初心者の質問である場合は申し訳ありませんが、行き詰まっています。
ありがとう!