分类目录归档:框架&库

DRF 序列化器


把正常数据类型入库

在业务逻辑中解耦了对数据的序列化和反序列化

并且 实现了对模型类的增删改查

最终在一般场景下没有其他事情了

序列化 把数据库对象(特定的数据类型)转为通用数据类型

流程 模型类对象---> (序列化器)python 字典-------> (渲染器)json 字符串

实现流程代码

from datetime import datetime

# 定义一个python 类 (特殊数据类型)
class Comment:
    def __init__(self, email, content, created=None):
        self.email =

Read more

celery 使用


celery 是啥?

由python 编写 的异步生产者消费者设计模式下 的实例

举个例子:

现有两个进程 生产者进程A 消费者进程B

现在的情况是

逻辑推导:

A 产出栗子 B 要吃栗子 那么这两个进程必然是 B依赖于A 耦合度很高且是一个耗时操作

B -----> (发送请求给A)------->(等待A 产出栗子也许会很久)------->(A响应栗子给B)------->(B得到栗子)

B 可能是个很多服务的集成后台之类很忙大忙人不想一直等等等

那么 celery 的任务就是 替B 去等

逻辑推导:

A 产出栗子 B 要吃栗子 C celery

B (替我去取栗

Read more

Django3 ----- ORM


数据库选择

模型建立

常用操作(CURD)

查询进阶

外键关联

事务

Django ORM 简介 定义

Django 框架自带的ORM 系统(python 还有其他ORM 模块如: SQLAlchemy )

特点

1 配置简单 2 开发迅速 3 性能低于pysql

ORM 定义

对象关系映射(Object Relational Mapping,简称ORM)

说明

是将面向对象语言程序中的对象自动持久化到关系数据库中 (sql 语句转化 ODD(面向对象))

转化中有性能损耗

本质是一个中间件

基本使用 1 配置

1 导包 ​ ------settings----

django 配置项

数据

Read more

Django ORM aggregate 聚合操作


我们经常会对orm 查询集做一些聚合操作,一般会想到集合遍历再累加,这通常的低效的,DJANGO ORM 有提供aggregate 方法我们在拉取查询机的时候可以更高效的生成一些聚合结果

from django.db.models import Sum
# 获取查询集
queryset = self.queryset.filter(id__in=(100, 200))

# 构建一个聚合结果
temp_aggr = queryset.aggregate(total_count=Sum('count'), 
max_count=Max('count'))

# 获

Read more

Django ----- 简介


Django① 介绍

基本介绍 由python实现的,开源的,Web开发框架 起初被开发来用于管理劳伦斯日报(Lawrence Journal-World)旗下的新闻内容网站 ② 2005年7月在BSD许可协议下发布 Django是一个比利时音乐家的名字

使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,

开发架构上Django 是支持MVC 模型的 并以此为基础衍生出来MVT 架构模型③

Django 是目前最成熟的python web 框架,基本配套了web服务中各种情况下的解决方案。

Django 解决了什么问题

更快的开发速

Read more