django-models - form_valid 更新视图
问题描述
亲爱的社区,美好的一天!
我的模型:
class CheckList(models.Model):
author = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)
...
datecompleted = models.DateTimeField(null=True)
post_date = models.DateTimeField(auto_now=True)
表格.py:
class CompletionChecklistForm(forms.ModelForm):
class Meta:
model = CheckList
fields = ('vessels_name', 'datecompleted')
现在我想更新 'datecompleted' 字段:
视图.py:
class CompleteItemView(UpdateView):
model = CheckList
form_class = CompletionChecklistForm
template_name = 'completion_checklist.html'
success_url = reverse_lazy('home')
def form_valid(self, form):
form.instance.datecompleted = timezone.now()
form.instance.save()
return super(CompleteItemView, self).form_valid(form)
模板:
{% block content %}
<h2 class="d-flex justify-content-center">Completion of current Checklist</h2>
<br>
<br>
<container class="d-flex justify-content-center">
<div class="form-group w-50">
<h4>Complete: {{ object.vessels_name }}?</h4><br>
{{ object.datecompleted }}
<form method="post">
{% csrf_token %}
<div class="clearfix">
<button class="btn btn-danger float-left" type="submit">Yes</button>
<a href="{% url 'home' %}" class="btn btn-secondary float-right">No, back</a>
</div>
</form>
</div>
</container>
{% endblock %}
没有错误消息,但字段值也没有改变。我的观点正确吗?先感谢您。
解决方案
推荐阅读
- html -
- sql - 在创建程序时需要帮助
- reporting-services - 展开图标的 SSRS 缩进
- javascript - Docker-compose 找不到模块
- vba - 运行时错误9,下标超出范围
- apache-spark - 为什么 Spark 两次处理相同的数据?
- azure-cosmosdb - 天蓝色表导出时间戳值不起作用
- javascript - 如何从 Javascript 设置 Angular formcontrol 字段的值?
- python - 通过 PyCharm 安装 pygame 时出现值错误
- python-2.7 - Python 2.7 - 如何删除文本文件中超过 x 数量的行?