python-3.x - Django:创建帖子后显示消息
问题描述
用户创建帖子后如何添加简单消息,例如“帖子已创建”
视图.py
class PostCreateView(LoginRequiredMixin, CreateView):
model = Post
form_class = PostForm
def form_valid(self, form):
form.instance.author = self.request.user ##author = current logged in user
return super().form_valid(form)
base.html
{% if messages %}
{% for msg in messages %}
<div class="alert alert-info alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
{{msg.message}}
</div>
{% endfor %}
{% endif %}
解决方案
在您的 form_valid 和 form_invalid 方法中,您可以添加消息。
from django.contrib import messages
def form_valid(self, form):
....
msg = 'Your thing has been done successfully'
messages.add_message(self.request, messages.SUCCESS, msg)
return super().form_valid(form)
推荐阅读
- php - 无法从表单 LARAVEL 获取输入数据
- python - python> 如何在 linux(VM) 上的 venv(created on window) 中执行我的脚本?
- node.js - $elemmatch 只返回一个结果
- css - 手风琴最大高度过渡不起作用
- c - 警告从没有强制转换的指针中生成整数
- javascript - 如何在本机反应中进行条件渲染
- react-native - 如何在本机反应中请求 iOS 存储权限?
- android - Android MP 图表在 x 轴上以 dd-MM-yyyy 格式设置日期
- mysql - 如何找到唯一索引的名称?MySQL
- python-2.7 - 运行多个函数