ビュー.py
def save_report(request):
form = ReporterRegisterForm()
profileform = ProfilecontactForm()
user = request.user
userprofile = UserProfile.objects.get(user=user)
if request.method == 'POST':
id = request.POST.get('id')
user = User.objects.get(pk=id)
userprofile = UserProfile.objects.get(user=user.id)
form = ReporterRegisterForm(request.POST, instance=user)
profileform = ProfilecontactForm(request.POST,instance = userprofile)
if form.is_valid() and profileform.is_valid():
form.save()
profilesave = profileform.save(commit=False)
profilesave.save()
return render(request, 'setting/edit_reporter.html',
{'form': form,
'userprofile':userprofile
})
urls.py
urlpatterns = patterns(
'setting.views',
(r'^$', 'index'),
(r'^save-reporter/$', 'save_reporter'),)
js:
$('.reporter').click(function () {
alert(1)
var id = $(this).attr('id');
var csrf_token = $("#csrf_token").val();
$.ajax({
data:{
csrfmiddlewaretoken: ('{{csrf_token}}'),
// form:form.serialize(),
id:id,
},
type:'POST',
url: '/setting/save-reporter/',
success: function() {
$('#authorisedreporter').show();
}
});
});
html:
<button type="button" id="{{ list.0.id }}" class="openDiv">{{list.0.name}} </button>
{{ list.0.id }} リストの ID はユーザー テーブルの ID です
これは、フォーム データを更新するための私の views.py です。フォーム データをインスタンス化したいのですが、更新モードでフィールドを表示する必要があります。インスタンス化されていません。POST から正しい ID を取得しています。ヘルプが必要です