gpt4 book ai didi

django - 在模板中区分创建和更新表单

转载 作者:行者123 更新时间:2023-12-02 08:57:11 25 4
gpt4 key购买 nike

如果 CreateView 和 UpdateView 使用相同的模板“model_form.html”,那么在模板中如何区分我是创建还是更新表单?

我的一般观点如下

class AuthorCreateView(CreateView):
form_class = AuthorForm
model = Author


class AuthorUpdateView(UpdateView):
form_class = AuthorForm
model = Author

作者表单如下

class AuthorForm(ModelForm):
class Meta:
model = Author
fields = ('first_name', 'last_name')

我的模板如下

<form action="" method="post">
{% csrf_token %}
<table border="0" cellpadding="4" cellspacing="0">
<tr>
<td>First Name</td>
<td>{{ form.first_name.errors }}{{ form.first_name }}</td>
</tr>
<tr>
<td>Last Name</td>
<td>{{ form.last_name.errors }} {{ form.last_name }}</td>
</tr>
</table>
{% if form.isNew %}
<input type="submit" value="Update Author" />
{% else %}
<input type="submit" value="Add Author" />
{% endif %}
</form>

在我的模板中,我想区分创建 View 和更新 View ?

最佳答案

在更新 View 中,将有一个 form.instance,并且 form.instance.pk 不会是 None。在创建 View 中,可能有也可能没有 form.instance,但即使有 form.instance.pk 也将是 None。

关于django - 在模板中区分创建和更新表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18806703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com