Django 登録した情報を編集したい 初心者
Q&A
解決したいこと
form.pyで作成したフォームクラスで登録した内容を、同じフォームを利用し編集したいです。登録情報の一覧ページを作成し、idは取ってきて、そのidからどうやってform.pyのフォームクラスに渡せばよいのかがわかりません。適当に"objectsget()"でオブジェクト取得して、渡してみたものの上手くいきませんでした。
お忙しいところ恐縮ですがアドバイスいただけると嬉しいです。Djangoのチュートリアルを終了したばかりで、まだそこまで理解しておりませんが、何卒宜しくお願い致します。
form.py
class registerForm(forms.Form):
name = forms.CharField(
label='Name',
widget=forms.TextInput(attrs={'class':'form-control'})
)
mail = forms.EmailField(
label='Mail',
widget=forms.TextInput(attrs={'class':'form-control'})
)
address = forms.EmailField(
label='Address',
required=False,
widget=forms.TextInput(attrs={'class':'form-control'})
)
view.py
# num -> データベースに登録したid
def edit(request, num):
# オブジェクト取得して渡せばよい?
obj = user_mst.objects.get(id=num)
if (request.method == 'POST'):
friend = registerForm(request.POST, obj)
friend.save()
return redirect(to='/monitor')
params = {
'title': '編集',
'id':num,
'form': registerForm(obj),
}
return render(request, 'monitor/edit.html', params)
0