Django Dayseven 自关联表格的建立、查询、比较运算、range

本文介绍了Django中如何处理跨app外键,创建自关联表格,并展示了电商省市区三级关联的示例。讲解了Comment类的创建及数据插入,包括外键的设置方法。还探讨了Django的级联删除策略、查询过滤器如like、contains、in等,并提到了backref反向引用。最后,涉及了时间范围查询和时间区的注意事项。
摘要由CSDN通过智能技术生成

1. 外键的创建其他方式等。自关联表格的建立

上一次说的是在同一个app中应用外键,而如果跨app使用外键呢?
举例新建users app与news app 关联外键

setting中注册app
然后cmd中迁移python manage.py makemigrations
然后 python manage.py migrate

在这里插入图片描述
在这里插入图片描述
在一个工作表中,电商的省市区三级对应
在这里插入图片描述

以百度贴吧的评论和追加评论作为关联举例:
在news app 的models.py中编写 创建Comment 类
在这里插入图片描述
添加第一条数据
在news app 的views 中添加
在这里插入图片描述

接着映射数据库
在这里插入图片描述
在这里插入图片描述

添加第二条数据,在真好吃 下面添加comment
首先找到第一条信息,
在这里插入图片描述
添加第二条评论

外键id 怎么设置?
通过外键呗
在这里插入图片描述
在这里插入图片描述

添加成功第二条在这里插入图片描述

2.

在这里插入图片描述
在这里插入图片描述

  1. CASCADE 级联删除很清楚,不演示。
    2.protect 外键受保护,不能删除。
    在这里插入图片描述
  2. SET—NULL
    在这里插入图片描述
    4, SET_DEFAULT

两种语句结尾写法都习惯行在这里插入图片描述
5, SET()

在这里插入图片描述

3. 查找

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

like 相当于模糊查询,contains 是模糊查询(区分大小写), icontains 不区分大小写 在这里插入图片描述
在这里插入图片描述
in
在这里插入图片描述

在这里插入图片描述
没有外键的表,用backref 反向引用,查到字段。
Django中是related_query_name,
在这里插入图片描述
Django也与默认的反向引用,下列几张图都是默认反向的使用。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 比较

在这里插入图片描述
gt 举例: 唯独没有 为1的 天龙八部
在这里插入图片描述
range 与函数range 不同, 这里 range 都是闭区间
在这里插入图片描述
以range做一个特殊需求,通过插入时间,查询数据
导入 datetime在这里插入图片描述

在这里插入图片描述
切记,时区更改
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值