Django QuerySet对象,exclude()方法

news2024/9/22 23:32:13

模型参考上一章内容:

Django QuerySet对象,filter()方法-CSDN博客

exclude()方法,用于排除符合条件的数据。

1,添加视图函数

Test/app11/views.py

from django.shortcuts import render
from .models import Post

def index(request):
    posts = Post.objects.all()
    return render(request, '11/index.html', {'posts': posts})



# apps/books/views.py

from django.shortcuts import render
from .models import Book

def book_list_view(request):
    # 使用filter()方法获取所有价格在10到20之间的书籍
    # books = Book.objects.filter(price__gte=10, price__lte=20)  # __gte是“greater than or equal to”(大于等于)的缩写,__lte是“less than or equal to”(小于等于)的缩写。
    # books = Book.objects.filter(price__gt=10)   # 在Django的ORM(对象关系映射)查询中,__gt是过滤条件的一个特殊语法,用于表示“大于”(greater than)。
    books = Book.objects.filter(price__lt=29.99)   # __lt 是“less than”(小于)的缩写。
    return render(request, '11/book_list.html', {'books': books})

def get_book_view(request):
    try:
        # 使用get()方法获取标题为"Python Cookbook"的书籍
        book = Book.objects.get(id=19)
        # 现在book变量包含了匹配的书籍对象
        print(book)
        return render(request, '11/book_detail.html', {'book': book})
    except Book.DoesNotExist:
        # 如果没有找到匹配的书籍,返回错误信息
        return HttpResponse("Book not found.")
    except Book.MultipleObjectsReturned:
        # 如果找到多个匹配的书籍,返回错误信息
        return HttpResponse("Multiple books found with the same title.")



def book_list_view_exclude(request):
    # 使用exclude()方法获取所有价格不等于10且标题不包含"Python"的书籍
    books = Book.objects.exclude(price=9.99).exclude(title__icontains="Python")
    return render(request, '11/book_list_exclude.html', {'books': books})

2,添加html代码

Test/templates/11/book_list_exclude.html

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>书籍列表</title>
</head>
<body>
    <h1>书籍列表</h1>
    {% if books %}
        <ul>
        {% for book in books %}
            <li>
                <h2>{{ book.title }}</h2>
                <p>作者: {{ book.author }}</p>
                <p>价格: {{ book.price }}</p>
            </li>
        {% endfor %}
        </ul>
    {% else %}
        <p>没有找到书籍。</p>
    {% endif %}
</body>
</html>

3,添加路由地址

Test/app11/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('index/', views.index, name='index'),
    path('book_list_view/', views.book_list_view, name='book_list_view'),
    path('get_book_view/', views.get_book_view, name='get_book_view'),
    path('book_list_view_exclude/', views.book_list_view_exclude, name='book_list_view_exclude'),
]

4,访问页面 

http://127.0.0.1:8000/app11/book_list_view_exclude/

 可以看到所有价格不等于10且标题不包含"Python"的书籍数据被过滤了,没有在页面展示出来

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1906749.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能遥测终端机RTU-精确监控 智能运维

智能遥测终端机RTU是物联网领域中一种重要的设备&#xff0c;它的出现无疑为远程监控和数据采集提供了强大的支持。计讯物联智能遥测终端机RTU具备数据采集、处理、通信和控制功能的设备&#xff0c;可以实现对远程设备的监控与控制。它在物联网系统中扮演着桥梁的角色&#xf…

单北斗定位智能终端提倡应用的重要性

单北斗定位智能终端的提倡应用具有重要意义&#xff0c;主要体现在以下几个方面&#xff1a; 一、国家安全与自主可控 自主可控&#xff1a;北斗卫星导航系统是我国自主研发的全球卫星导航系统&#xff0c;全面推广使用国产单北斗定位智能终端&#xff0c;意味着我们将更加依…

希亦、小吉、觉飞内衣洗衣机值得买吗?王牌对决测评还不来看看!

内衣洗衣机是近几年新兴的家电产品&#xff0c;以清洁效果好、除菌能力强&#xff0c;被很多人种草入手了&#xff01;但网上有不少人虽感兴趣&#xff0c;但不清楚如何选。担心买到质量差&#xff0c;清洗不干净的产品。所以为了帮助大家可以更好的了解哪个品牌的内衣洗衣机比…

bash: redi-cli: 未找到命令...

问题描述 在执行命令&#xff1a;redi-cli --bigkeys 提示&#xff1a;bash: redi-cli: 未找到命令... 确定服务器是否有Redis进程 ps -ef | grep redis查找Redis 文件信息 find / -name "redis-*"进入到当前目录 cd /usr/bin/再次执行命令 涉及redis-cli 连…

(三)前端javascript中的数据结构之链表上

在js中&#xff0c;没有为我们提供原生的数据结构支持的&#xff0c;但是在java中是有提供的。所以需要我们去模拟这种结构实现。 链表中最关键的一个元素&#xff0c;就是头节点&#xff0c;头节点不存储数据&#xff0c;指向第一个节点链表中几乎所有的操作都要从头结点开始。…

提高交易决策质量,Anzo Capital昂首资本只需两个交易策略

要想提高交易决策质量&#xff0c;其实很简单&#xff0c;Anzo Capital昂首资本只需两个交易策略&#xff0c;结合价格行为和VSA(成交量与价格分析)就可以达成我们的目的。首先&#xff0c;理解这两个概念&#xff1a; 1. 价格行为&#xff1a;价格行为是市场价格变动的方式&a…

js逆向研究【响应结果解密思路与案例实战】

什么是响应结果加密 我们在爬虫过程中&#xff0c;抓包之后&#xff0c;针对内容关键词搜索无法定位到数据接口&#xff0c;并在响应的接口内发现有编码/不可读的长字符串等&#xff0c;我们可以判定其为响应结果加密。 如何针对将响应结果还原为可读的数据 如果响应结果有特…

高中毕业生,学历低可以考PMP吗?

PMP认证与学历无关&#xff0c;但需要注意报考条件&#xff1a; 学历&#xff1a;满23周岁/高中毕业5年以上/大专毕业3年以上&#xff0c;满足其中一个即可&#xff1b; 证明&#xff1a;必须有35学时&#xff08;PDU&#xff09;证明&#xff0c;即项目管理培训或学习证明&a…

Java | Leetcode Java题解之第220题存在重复元素III

题目&#xff1a; 题解&#xff1a; class Solution {public boolean containsNearbyAlmostDuplicate(int[] nums, int k, int t) {int n nums.length;Map<Long, Long> map new HashMap<Long, Long>();long w (long) t 1;for (int i 0; i < n; i) {long i…

6、Redis系统-数据结构-04-Hash

四、哈希表&#xff08;Hashtable&#xff09; 哈希表是一种高效的键值对数据结构&#xff0c;通过散列函数将键映射到表中的位置&#xff0c;实现快速的插入、删除和查找操作。Redis 广泛使用哈希表来实现 Hash 对象和数据库的键值存储。以下将从结构设计、哈希冲突与链式哈希…

【学术会议征稿】第五届计算机工程与智能控制学术会议(ICCEIC 2024)

第五届计算机工程与智能控制学术会议&#xff08;ICCEIC 2024) 2024 5th International Conference on Computer Engineering and Intelligent Control 第五届计算机工程与智能控制学术会议&#xff08;ICCEIC 2024&#xff09;将于2024年10月18日至22日在广州举办&#xff0…

04-Haproxy搭建Web群集

理论讲解 Haproxy 是目前比较流行的一种群集调度工具&#xff0c;同类群集调度工具有很多&#xff0c;如LVS 和Nginx。相比较而言&#xff0c;LVS 性能最好&#xff0c;但是搭建相对复杂:Nginx的upstream模块支持群集功能&#xff0c;但是对群集节点健康检查功能不强&#xff…

tiff图片怎么转jpg?值得介绍的四种tiff转jpg方法

tiff图片怎么转jpg&#xff1f;jpg使用有损压缩技术&#xff0c;可以显著减小文件大小。这使得jpg文件更适合在网络上传输和在设备上存储。而且&#xff0c;PG格式被各种浏览器、图像查看器、编辑软件以及社交媒体平台广泛支持&#xff0c;使得分享和查看图片更加方便。如果需要…

tableau条形图绘制 - 2

tableau条形图绘制 1. 条形图绘制-11.1 创建工作表1.2 修改工作表名称1.3 条形图绘制1.4 显示标签1.5 行列转换 2. 条形图绘制-22.1 新建工作表2.2 修改工作表名称2.3 条形图绘制2.4 价格度量选平均值2.5 标签度量选平均值2.6 升序&#xff0c;整个视图显示2.7 行列转换 3. 堆积…

叹为观止|四款让人赞不绝口的优质软件,越用越上瘾

不说闲话直接上狠货&#xff0c;下面神仙软件&#xff0c;都值得使用。 Smart Defrag 说起电脑运行慢或者抽风&#xff0c;磁盘碎片就是让电脑变得又卡又不稳定的元凶之一。 不过Smart Defrag就算是新手小白也能操作&#xff0c;它里面藏着一个超强的碎片整理引擎&#xff0…

DevEco Studio No device 无法识别 usb 设备 - 鸿蒙

DevEco Studio IDE 版本与手机系统版本升级后出现了 USB 连接设备后 IDE 无法识别 no device 的情况出现; 解决办法 首先,确定当前 DevEco Studio 的 IDE 版本与移动设备的大版本保持一致; 其次,在版本相互匹配的情况下,查看移动设备是否开启了开发者模式与 USB 调试,具体步骤…

短视频文学剧本:成都柏煜文化传媒有限公司

短视频文学剧本&#xff0c;是创作者对现实世界的一次微缩重构。在这个被精心设计的空间里&#xff0c;时间被压缩&#xff0c;空间被浓缩&#xff0c;但每一个细节都经过精心雕琢&#xff0c;力求在有限的时间内展现出最大的信息量与情感深度。成都柏煜文化传媒有限公司从人物…

南方SouthMap:测绘世界的利器

在现代测绘领域&#xff0c;南方SouthMap软件无疑是一款不可或缺的工具。作为一名长期使用这款软件的用户&#xff0c;我深深感受到它在工作中的重要性和便利性。SouthMap不仅仅是一款软件&#xff0c;更是测绘工作者的得力助手&#xff0c;帮助我们在复杂的地理信息数据处理中…

9.pwn 栈溢出原理

栈溢出简介 函数中的存储在栈中的局部变量数组边界检查不严格发生越界写&#xff0c;造成用户输入覆盖到缓冲区外的数据内容&#xff0c; 由于栈中同时存在着与函数调用参数的相关信息&#xff0c;栈溢出可以导致控制流劫持 基础栈溢出(hello world in pwn) 多数情况下我们需…

掌握【Python异常处理】:打造健壮代码的现代编程指南

目录 ​编辑 1. 什么是异常&#xff1f; 知识点 示例 小李的理解 2. 常见的内置异常类型 知识点 示例 小李的理解 3. 异常机制的意义 知识点 示例 小李的理解 4. 如何处理异常 知识点 示例 小李的理解 5. 抛出异常 知识点 示例 小李的理解 6. Python内置…