摘要:项目开发中遇到一个问题: 当分页后还要进行数据处理,可能导致原本分页返回的数据不足,那么需要从另外一页进行数据补全(也要数据进行过滤)。 自己写了一个小的组件: def data_paging(queryset, page, limit, deal_func=None, *args, **kwarg
阅读全文
摘要:django中使用开启事务的三种方式 一.全局开启事务 # settings.py DATABASES = { 'default': { #全局开启事务,绑定的是http请求响应整个过程 'ATOMIC_REQUESTS': True, } } # 局部禁用 from django.db impor
阅读全文
摘要:一.性能方面 1.connection.queries >>> from django.db import connection >>> connection.queries [{'sql': 'SELECT polls_polls.id, polls_polls.question, polls_p
阅读全文
摘要:在django中有多种方式可以让前端下载一个文件,比如excel的文件。这里记录下几种实现的方式。 一. 直接在django项目中有一个现成的excel文件且其中内容都有 1.使用django中的HttpResponse类 (1).使用open()打开二进制方式 from django.http i
阅读全文
摘要:1.create_time_one = models.DateTimeField('创建时间', default=datetime.now()) 2.update_time_one = models.DateTimeField('更新时间', default=datetime.now) 3.crea
阅读全文
摘要:这一篇笔记将介绍条件表达式,就是如何在 model 的使用中根据不同的条件筛选数据返回。 这个操作类似于数据库中 if elif else 的逻辑。 1、model 和数据准备 这篇笔记我们用到的 model 是 Client,放在 blog/models.py 下 class Client(mod
阅读全文
摘要:在django中,从数据库拿到的数据:a = "[1,2]" 对此,进行了序列化操作: b = json.loads(a) # [1,2] 结果打印类型,发现还是str, 必须,b = json.loads(b) 再次序列化才行。
阅读全文
摘要:一、主表和从表 在 Django 中,ORM 的关系模型中,有主表和从表之分。其中,主表又称为“一方表”,从表也称为“多方表”。这里举个简单的例子:假设有两个模型 Blog 和 Entry,每个 Blog 包含多个 Entry: class Blog(models.Model): name = mo
阅读全文
摘要:简述: 简述:django实现websocket,之前django-websocket退出到3.0之后,被废弃。官方推荐大家使用channels。 channels通过升级http协议 升级到websocket协议。保证实时通讯。也就是说,我们完全可以用channels实现我们的即时通讯。而不是使用
阅读全文
摘要:当我们想要通过excel来实现批量导入时,有一种方式: 1.需要创建的对象 data_dict = {}# 多个data_dict 2.将每一个要创建的对象加入到 一个列表当中 data = [] data.append(data_dict) 3.通过事务进行创建 with transaction.
阅读全文
摘要:要使用Django实现分页器,必须从Django中导入Paginator模块 from django.core.paginator import Paginator 假如现在有150条记录要显示,每页显示10条 >>> from django.core.paginator import Pagina
阅读全文
摘要:import django import sys import os # 获取当前项目的根路径 base_path = os.path.basename(os.path.basename(os.path.abspath(__file__))) print(base_path) # 将当前项目的根路径
阅读全文
摘要:了解Django框架中进行数据查询优化,需要了解几点: 1.查询集是惰性的,这意味着在你对查询集执行某些操作(例如对其进行迭代)之前,不会发出相应的数据库请求; 2.始终通过指定要返回的值的数量来限制数据库查询的结果; 3.在 Django 中,查询集可以通过迭代、切片、缓存和 python 方法(
阅读全文
摘要:Django中通过request.META可以来获取用户的IP。 request.META 是一个Python字典,包含了所有本次HTTP请求的Header信息,比如用户IP地址和用户Agent(通常是浏览器的名称和版本号)。 注意,Header信息的完整列表取决于用户所发送的Header信息和服务
阅读全文
摘要:# date__range([start,end]) # 不包括end时间,需转换最后的截止时间 from datetime import datetime, timedelta new_end = end + timedelta(days=1) obj.filter(tm__range=[star
阅读全文
摘要:Django中的Admin站点管理: 内容发布的部分由网站的管理员负责,包括查看、添加、修改、删除数据; Django项目中默认启用Admin管理站点:列表页选项, 编辑页选项, 重写模板。 #准备工作 启用mysql数据库+定义AreaInfo模型类+创建管理员+注册模型类 再 重写模型__str
阅读全文
摘要:在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接。 1. 修改项目的 settings 配置 在 settings.py 中配置需要连接的多个数据库连接串 DATABASES = { 'default': { 'EN
阅读全文
摘要:1.日志基础知识 日志与我们的软件程序密不可分。它记录了程序的运行情况,可以给我们调试程序和故障排查提供非常有用的信息。每一条日志信息记录了一个事件的发生。具体而言,它包括了: 事件发生时间 事件发生位置 事件的严重程度--日志级别 事件内容 日志的级别又分为: DEBUG:用于调试目的的低级系统信
阅读全文
摘要:Django设置文件包含你所有的Django安装配置。这个文件一般在你的项目文件夹里。比如我们创建了一个名为mysite的项目,那么这个配置文件setting.py就在项目里的mysite文件夹里。 下面列表一些常用的settings配置供参考。 1.配置静态文件 #STATIC_URL = '/s
阅读全文
摘要:首先介绍一下 manager 的使用场景,比如我们有一些表级别的,需要重复使用的功能,都可以使用 manager 来实现。 比如我们在前面的笔记中介绍的 model 的 create()、update() 等方法,Blog.objects.create() 中前面的 objects 就是一种 man
阅读全文