首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何显示基于查询集过滤器的django消息?

如何显示基于查询集过滤器的django消息?
EN

Stack Overflow用户
提问于 2021-06-09 12:48:00
回答 1查看 50关注 0票数 0

我想根据我的过滤器显示消息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CHOICES = (

        ('0', 'published',),

        ('1', 'pending',),

        ('2', 'rejected',),

        )

在这里,我尝试了这个基于过滤器显示消息的代码,但它只显示已发布的消息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def get_context_data(self, **kwargs):

            data = super().get_context_data(**kwargs)

            published = BlogComment.objects.filter(is_published="0")

            pending = BlogComment.objects.filter(is_published="1")

            

            if published:

                 messages.add_message(self.request, messages.INFO, 'Comment status published Sucessfully')

            elif pending: 

               messages.add_message(self.request, messages.INFO, 'Comment status pending Sucessfully')

            

            return data

为什么我只收到已发布的消息?

我还尝试了if语句,而不是elif。在使用if语句之后,当我改变任何对象的状态时,我会同时得到三条消息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        if published:
             messages.add_message(self.request, messages.INFO, 'Comment Published Sucessfully')
        if pending: 
             messages.add_message(self.request, messages.INFO, 'Comment Status Pending')
        if rejected:
             messages.add_message(self.request, messages.INFO, 'Comment Status 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-09 15:51:13

您是否正在尝试显示单个对象的状态更新?如果是这样,那么您可以简单地更新视图逻辑,其中视图是从from django.views.generic import UpdateView继承的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.views.generic import UpdateView
from django.contrib import messages


class YourUpdateView(UpdateView):
    # other part of view 
   
    def form_valid(self, form):
        self.object = form.save()
        status = self.object.status
        messages.success(self.request, f"Status updated to {status}")
        return super().form_valid(form)

如果我弄错了,请在评论中详细解释。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67904460

复制
相关文章
Django 2.1.7 查询集 QuerySet
上一篇Django 2.1.7 模型 - 条件查询 F对象 Q对象 聚合查询讲述了关于Django模型的介绍F对象、Q对象、聚合查询等功能。
Devops海洋的渔夫
2019/06/15
1.2K0
18. Django 2.1.7 查询集 QuerySet
上一篇Django 2.1.7 模型 - 条件查询 F对象 Q对象 聚合查询讲述了关于Django模型的介绍F对象、Q对象、聚合查询等功能。
Devops海洋的渔夫
2022/01/17
7700
18. Django 2.1.7 查询集 QuerySet
Django 2.1.7 使用内置messages显示通知消息
在Web应用程序中,有时候需要在处理表单或其他类型的用户输入后向用户显示一次性通知消息(也称为“flash消息”),例如:用户注册成功、订单提交完成等信息。
Devops海洋的渔夫
2019/08/22
1.6K0
[742]Flask数据库过滤器与查询集
flask-sqlalchemy所作的操作只是把模型类转换为sql语句,然后通过数据库驱动访问mysql,在获取到结果后再把数据转换为模型对象
周小董
2020/01/13
7K0
五、Django基于对象的跨表查询
关系属性(字段)写在哪个类(表)里面,从当前类(表)的数据去查询它关联类(表)的数据叫做正向查询,反之叫做反向查询
Dreamy.TZK
2020/04/09
1.2K0
Django 聚合与查询集API实现侧边栏
1. 聚合的产生来源于django数据库查询,通常我们使用django查询来完成增删查改,但是有时候需要更复杂的方法才能完成对数据的提取、筛选、更改,所以需要一组对象聚合来完成这种操作。模型举例如下:
菲宇
2020/03/20
1.5K0
Django 过滤器
django1.4 or later html 页面从数据库中读出DateTimeField字段时,显示的时间格式和数据库中存放的格式不一致,比如数据库字段内容为2012-08-26 16:00:00,但是页面显示的却是Aug. 26, 2012, 4 p.m. 为了页面和数据库中显示一致,需要在页面格式化时间,需要添加<td>{{ dayrecord.p_time|date:"Y-m-d H:i:s" }}</td> 类似的过滤器。刷新页面,即可正常显示。
阳光岛主
2019/02/19
2.7K0
Django模板过滤器
过滤器是通过管道符号(|)进行使用的,例如:{{ name|length }},将返回name的长度。过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过滤器根据自己的功能,再返回相应的值,之后再将结果渲染到页面中
星哥玩云
2022/09/14
3380
Django REST Framework-如何使用过滤器
Django REST Framework (DRF) 是一个开源的 Web 框架,它建立在 Django 上,可以帮助你轻松地构建 RESTful API。DRF 提供了很多有用的功能,其中之一就是过滤器(filters)。
玖叁叁
2023/04/25
2.1K0
Django的filter查询
Django的filter查询 name__contains表示精确大小写的模糊查询 使用name__icontains表示忽略大小写 year_count = DownloadFile.objects.filter(date__contains='2018').count() year_up_rate=round((year_count-DownloadFile.objects.filter(date__contains='2017').count())/1000)
py3study
2020/01/20
7320
如何用Know Streaming来查询Kafka的消息
Kafka的消息查看功能算是一个呼声比较高的需求了。但是它目前还并不能像RocketMq那样比较友好的对消息做一些复杂查询操作。
石臻臻的杂货铺[同名公众号]
2022/11/16
7580
如何用Know Streaming来查询Kafka的消息
Django ModelChoiceField:修改过滤查询集 queryset的两种方法
Django Form类定义中有一个 ModelChoiceField  对应的是Model 的外键,queryset 是返回一个查询集对象
KEVINGUO_CN
2020/04/26
1.6K0
如何修改django的app在admin中显示的名称
在django的开发中,很多时候我们希望app在admin中显示成我们想要的中文名,而不是显示默认的app_label名称。 比如我们有一个blog应用,在我们的blog app目录下面,默认会生成一个apps.py文件,类似:
小海怪的互联网
2019/09/25
3.4K0
如何修改django的app在admin中显示的名称
Django实践-07日志调试,Django-Debug-Toolbar配置与sql优化
官网:https://www.djangoproject.com/ 博客:https://www.liujiangblog.com/ 本博客内容参考git:https://gitcode.net/mirrors/jackfrued/Python-100-Days 一些细节问题,大家可以查看git连接。本文主要的改变为把代码升级为django4.1版本。
用户2225445
2023/10/16
2870
Django实践-07日志调试,Django-Debug-Toolbar配置与sql优化
六、Django学习之基于下划线的跨表查询
六、Django学习之基于下划线的跨表查询 一对一 正向查询的例子为 已知用户名,查询用户的电话号码。反向查询例子反之。 正向查询 其中下划线前的表示表名,无下划线的表示的是Author表 result = models.Author.objects.filter(name='admin').values("authorDetail__telephone",'name','age') 反向查询 values可以不写,则去除能拿到的全部数据。filter中的双下划线表示联表 result = mode
Dreamy.TZK
2020/04/09
5780
django分页器的用法_django分页查询
当后台返回的数据过多时,我们就要配置分页器,比如一页最多只能展示10条等等,drf中默认配置了3个分页面
全栈程序员站长
2022/09/19
1K0
MySQL | 如何对查询结果集进行排序
数据操作语言:结果集排序 如果没有设置,查询语句不会对结果集进行排序。也就是说,如果想让结果集按照某种顺序排列,就必须使用 ORDER BY 子句。 SELECT ...... FROM ...... ORDER BY 列名 [ASC | DESC]; SELECT ename,sal FROM t_emp ORDER BY sal; SELECT empno,ename,sal,deptno FROM t_emp ORDER BY sal DESC; 排序关键字 ASC 代表升序(默认),DESC
Zkeq
2022/05/18
6.3K0
MySQL | 如何对查询结果集进行排序
django 模糊查询
同理,price字段支持大于等于 小于等模糊查询,日期支持查询某月的某年的等查询方法。
全栈程序员站长
2022/08/31
3.2K0
django 模糊查询
点击加载更多

相似问题

基于父查询集的Django查询集过滤器

19

Django过滤器查询集

11

Django过滤器查询集

12

基于URL的Django REST框架过滤器查询集

36

Django过滤器-基于来自url的slug编辑查询集

127
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文