ModelFormを使うことでよりスムーズにレコードの保存を行うことができる
/hello/forms.py
from django import forms from.models import Friend class FriendForm(forms.ModelForm): class Meta: model = Friend fields = ['name','mail','gender','age','birthday']
/hello/views.py
def create(request):
if(request.method == 'POST'):
obj = Friend()
friend = FriendForm(request.POST, instance=obj)
friend.save()
return redirect(to='/hello')
params = {
'title': 'Hello',
'form': HelloForm(),
}
return render(request, 'hello/create.html', params)
– obj = Friend()でインスタンスを作成し、FriendForm(request.POST, instance=obj)インスタンスを作成する
/hello/templates/hello/create.html
<body class="container">
<h1 class="display-4 text-primary">{{title}}</h1>
<form action="{% url 'create' %}" method="post">
{% csrf_token %}
<table class="table">
{{ form.as_table }}
<tr>
<td></td>
<td><input type="submit" value="click" class="btn btn-primary mt-2"></td>
</tr>
</table>
</form>
</body>

先が長いな。