1
は、次のように私がモデルを持っている私の機能は、フォームを表示し、更新するには、このようになります。Djangoの更新のModelForm
def show_privacy(request):
if not request.user.is_authenticated():
return HttpResponseRedirect('/')
if request.method == 'POST':
form = PrivacyForm(request.POST, instance=User.objects.get(pk=request.session['id']))
if form.is_valid():
form.save()
else:
form = PrivacyForm()
return render_to_response('settings_privacy.html', {'form': form}, context_instance=RequestContext(request))
dbの私のuser_idは1です。しかし、私がフォームを投稿すると、決して更新されません。私はform.save()がそこにプリントを置くことによって呼び出され、devサーバに表示されることを知っています。
私は、フォーム上のビットさびたかもしれないが、なぜあなたはUserPrivacyフォームにユーザーオブジェクトを渡していますか?あなたは通常、UserPrivacyインスタンスを渡しませんか? –
ログインしているユーザーに基づいてアイテムを更新したい。 – Mike
しかし、UserモデルのフィールドはUserPrivacyモデルのフィールドにどのようにマップされますか? UserPrivacyフォームのユーザーフィールドを設定しようとしていますか? –