<form action="/hello/" method="post">このように設定してあります。そのまま/helloに送信をするので、indexでGET/POST両方の処理を用意することになります。レコード作成のフォームは、以下の3つの入力フィールドを用意してあります。
<input id="name" type="text" name="name" value="{{current.name}}">
<input id="mail" type="text" name="mail" value="{{current.mail}}">
<input id="age" type="number" name="age" value="{{current.age}}">name、mail、ageの3つだけです。idやpub_dateは、自動で設定されるため、入力フィールドを用意する必要はありません。またvalueには、currentというオブジェクトのプロパティを出力するようにしてあります。currentに、作成したPersonインスタンスを設定しておけば、その値が各フィールドに表示されるというわけです。※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
{% load static %}
<html lang="ja">
<head>
<meta charset="utf-8">
<title>hello/index</title>
<link rel="stylesheet" type="text/css"
href="{% static 'hello/style.css' %}" />
</head>
<body>
<h1>hello/index</h1>
<p>{{msg}}</p>
<form action="/hello/" method="post">
{% csrf_token %}
<table>
<tr>
<th><label for="name">name: </label></th>
<td><input id="name" type="text" name="name"
value="{{current.name}}"></td>
</tr>
<tr>
<th><label for="mail">mail: </label></th>
<td><input id="mail" type="text" name="mail"
value="{{current.mail}}"></td>
</tr>
<tr>
<th><label for="age">age: </label></th>
<td><input id="age" type="number" name="age"
value="{{current.age}}"></td>
</tr>
<tr>
<th></th>
<td><input type="submit" value="OK"></td>
</tr>
</table>
</form>
<table width="90%">
<tr><th>id</th><th>name</th><th>mail</th><th>age</th><th>publish date</th></tr>
{% for obj in data %}
<tr>
<td>{{ obj.id }}</td>
<td>{{ obj.name }}</td>
<td>{{ obj.mail }}</td>
<td>{{ obj.age }}</td>
<td>{{ obj.pub_date }}</td>
</tr>
{% endfor %}
</table>
</body>
</html>
| << 前へ | 次へ >> |