Django Crudアプリケーションで追加/更新フォームを作成しました。データのためのモデルは、このようなものです:DJango CRUDアプリケーションの初期値をフォームで表示
class Proposal(models.Model):
org = models.CharField(max_length=200)
country = models.CharField(max_length=100)
recdate = models.DateField(blank=True, null=True)
subdate = models.DateField(blank=True, null=True)
status = models.CharField(max_length=20)
とviews.pyに私が追加、更新のためのコードを次ています
は
def proposal_create(request, template_name='proposal/proposal_form.html'):
form = ProposalForm(request.POST or None)
if form.is_valid():
form.save()
return redirect('list')
return render(request, template_name, {'form':form})
UPDATE
def proposal_update(request, pk, template_name='proposal/proposal_form.html'):
server = get_object_or_404(Proposal, pk=pk)
form = ProposalForm(request.POST or None, instance=server)
if form.is_valid():
form.save()
return redirect('list')
return render(request, template_name, {'form':form})
を追加します
AND fina LLY私は私のテンプレートで、私はこのようにしているforms.pyています:私は直面しています問題はこれです
<div align="center" style=" margin-top: 150; padding-top: 30; padding-bottom: 20; text-align: right; border-style: double; width: 50%; float: center; margin-left: auto; margin-right: auto; background-color: grey; color: black; border-color: white; border-width: 5px; box-shadow: 10px 10px 5px #888888;">
<form method="post">{% csrf_token %}
<div align="center" style="margin-right: auto; margin-left: auto; align-content: center; width: 80%; vertical-align: middle;">
<table class="table table-bordered">
<tr>
<td valign="middle" width="30%"><label for="{{ form.org.id_for_label }}">Organization:</label></td>
<td valign="middle" width="70%"><input type="text" name="org" class="form-control" form="{form.org}"></td>
</tr>
<tr>
<td valign="middle" width="30%"><label for="{{ form.country.id_for_label }}">Country:</label></td>
<td valign="middle" width="70%"><input type="text" name="org" class="form-control" form="{form.country}"></td>
</tr>
<tr>
<td valign="middle" width="30%"><label for="{{ form.recdate.id_for_label }}">Received Date:</label></td>
<td valign="middle" width="70%"><input type="Date" name="org" class="form-control" form="{form.recdate}"></td>
</tr>
<tr>
<td valign="middle" width="30%"><label for="{{ form.subdate.id_for_label }}">Submission Deadline:</label></td>
<td valign="middle" width="70%"><input type="Date" name="org" class="form-control" form="{form.subdate}"></td>
</tr>
<tr>
<td valign="middle" width="30%"><label for="{{ form.status.id_for_label }}">Status:</label></td>
<td valign="middle" width="70%"><input list="status" name="org" class="form-control" form="{form.status}">
<datalist id="status">
<option value="Pending">Pending</option>
<option value="Submitted">Submitted</option>
</datalist>
</td>
</tr>
<tr></tr>
</table>
<input type="submit" value="Submit" style="background-color: white; color: black;" />
<a href="/list" style="background-color: white; color: black;"><input type="button" value="Cancel" /></a>
</div>
</form>
:
**のためのフォームを追加完全に正常に動作しますが、編集するためのフォーム私はこのような単一波括弧を使用する場合のフィールドは、最初のデータが移入されていません。**
<td valign="middle" width="70%"><input type="text" name="org" class="form-control" form="{form.org}"></td>
私はthesというような二重の中括弧を使用する場合、最初のデータが表示されます:
<td valign="middle" width="70%"><input type="text" name="org" class="form-control" form="{{form.org}}"></td>
しかし、「>」の後に「>」と入力すると、フォームの後に大括弧が表示されます。