我在models.py文件中创建了一个名为Annoucement的模型,并在forms.py文件中创建了该模型的表单。然后,我在my views.py中为它创建了简单的创建视图,并使用django crispy forms包在前端显示它,但每当我加载网站时,字段的边框都会显示为红色,表示存在错误。我已经试着检查错误可能是什么,但我没有得到任何运气
models.py
class Announcement_by_dean(models.Model):
student_id = models.ManyToManyField(add_students_by_manager)
message = models.TextField()
sent_date = models.DateField(default=datetime.now(), blank=True)
updated_date = models.DateField(auto_now=True, blank=True)
def __str__(self):
return "message sent on "+ str(self.sent_date)
forms.py
class Annoucement_form(ModelForm):
class Meta:
model = Announcement_by_dean
fields = ['student_id', 'message']
views.py
def dean_page(request):
annoucement_list = Announcement_by_dean.objects.all()
if request.method == 'POST':
form = Annoucement_form(request.POST)
if form.is_valid():
form.save()
messages.success(request, _("Message Sent Successfully!!!"))
return redirect('dean_page')
else:
messages.error(request, _("Message Not Sent, Something is Wrong!!!"))
else:
form = Annoucement_form()
messages.error(request, _("Invalid Method!!!"))
context = {"form":form, "annoucement_list":annoucement_list}
return render(request, "dean_page.html", context)
dean_page.html
<!-- Send Announcement -->
<div class="tab-pane fade show" id="nav-announcement" role="tabpanel" aria-labelledby="nav-announcement-tab">
<div class="container mt-4 p-3">
<form action="{% url 'dean_page' %}" method="POST" enctype="multipart/form-data">
{% csrf_token %}
{{form|crispy}}
<button type="submit" class="btn btn-success btn-sm">Submit</button>
</form>
</div>
</div>
我能够解决这个问题,我意识到我的上下文缩进和返回渲染是问题所在
views.py
相关问题 更多 >
编程相关推荐