03 2022 档案

摘要:基于Django中间件学习编程思想 正常思路 def wechat(content): print('微信通知:%s'%content) def qq(content): print('qq通知:%s'%content) def email(content): print('邮箱通知:%s'%con 阅读全文
posted @ 2022-03-15 19:19 Snails蜗牛 阅读(28) 评论(0) 推荐(0)
摘要:importlib模块 importlib模块作用 专门用来字符串类型的导入 缺陷 最小单位只能到py文件名 演示 END 阅读全文
posted @ 2022-03-15 19:15 Snails蜗牛 阅读(27) 评论(0) 推荐(0)
摘要:Django中间件 Django中间件 1、Django中间件是Django的门户 请求来的时候需要先经过中间件才能到达真正的Django后端 响应走的时候最后也需要经过中间件才能发送出去 2、Django自带七个中间件 MIDDLEWARE = [ 'django.middleware.secur 阅读全文
posted @ 2022-03-15 19:09 Snails蜗牛 阅读(39) 评论(0) 推荐(0)
摘要:CBV添加装饰器的三种方式 CBV添加装饰器需要借助模块 from django.utils.decorators import method_decorator CBV中django不建议你直接给类的方法加装饰器,无论该装饰器能都正常给你 都不建议直接加 第一种 from django.views 阅读全文
posted @ 2022-03-15 19:01 Snails蜗牛 阅读(60) 评论(0) 推荐(0)
摘要:cookie与session cookie 以登录功能为例 原理: 当用户第一次登陆成功之后 将用户的用户名密码返回给用户浏览器 让用户浏览器保存在本地,之后访问网站的时候浏览器自动将保存在浏览器上的用户名和密码发送给服务端,服务端获取之后自动验证,这样的方式具有非常大的安全隐患 概述: 服务端保存 阅读全文
posted @ 2022-03-15 18:57 Snails蜗牛 阅读(46) 评论(0) 推荐(0)
摘要:批量插入与分页原理 批量插入 批量插入数据的时候,可以使用ORM给你提供的.bulk_create能够大大的减少操作时间 def ab_pl(request): # 普通做法 # 先给Book插入一万条数据 for i in range(10000): models.Book.objects.cre 阅读全文
posted @ 2022-03-08 16:47 Snails蜗牛 阅读(36) 评论(0) 推荐(0)
摘要:ORM中常用的字段和参数 ORM字段 1、AutoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 2、IntegerField 一个整数类型,范围在 -2147483648 to 2147483647。 3、C 阅读全文
posted @ 2022-03-08 15:23 Snails蜗牛 阅读(172) 评论(0) 推荐(0)
摘要:多对多表关系的三种创建方法 全自动 就是利用orm自动帮我们创建第三张关系表 优点: 代码不需要你写 非常的方便 还支持orm提供操作第三张关系表的方法 不足之处: 第三张关系表的扩展性极差(没有办法额外添加字段...) 代码: class Book(models.Model): name = mo 阅读全文
posted @ 2022-03-08 15:16 Snails蜗牛 阅读(133) 评论(0) 推荐(0)
摘要:Django中的事物 事务 ACID 原子性:不可分割的最小单位 一致性:跟原子性是相辅相成 隔离性:事务之间互相不干扰 持久性:事务一旦确认永久生效 开启事务 start transaction; 提交事务 commit; 回滚事务 rollback; Django中开启事务 '''Django开 阅读全文
posted @ 2022-03-08 15:12 Snails蜗牛 阅读(35) 评论(0) 推荐(0)
摘要:多表查询 正反向的概念 正向:外键字段在我手上那么,我查你就是正向 反向:外键字段如果不在手上,我查你就是反向 正向查询按字段;反向查询按表名小写 子查询(基于对象的跨表查询) 1、根据练习题理解 # 1.查询书籍主键为1的出版社 # book_obj = models.Book.objects.f 阅读全文
posted @ 2022-03-08 15:04 Snails蜗牛 阅读(52) 评论(0) 推荐(0)
摘要:Django中外键增删改查 外键字段的增删改查 1、auto_now=False,如果设置为True, 在更新当前记录的数据时候,会自动更新时间 auto_now_add=False,如果设置为True,当插入数据的时候,会把当前时间自动添加进去 publish_time = models.Date 阅读全文
posted @ 2022-03-08 14:59 Snails蜗牛 阅读(257) 评论(0) 推荐(0)
摘要:Django自带的序列化工具 普通做法 def user_list(request): user_list = models.User.objects.all() # queryset lst = [] for user in user_list: temp_dict = {} temp_dict[ 阅读全文
posted @ 2022-03-08 14:50 Snails蜗牛 阅读(53) 评论(0) 推荐(0)
摘要:Ajax Ajax优点与精髓 1、精髓 1、异步提交 2、局部刷新 2、优点 不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。(这一特点给用户的感受是在不知不觉中完成请求和响应过程) AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。 同步交互:客 阅读全文
posted @ 2022-03-08 14:45 Snails蜗牛 阅读(20) 评论(0) 推荐(0)
摘要:CBV与FBV FBV FBV: function based view 就是平常在views.py中写的函数 from django.shortcuts import render, HttpResponse # Create your views here. from django.http i 阅读全文
posted @ 2022-03-02 18:43 Snails蜗牛 阅读(110) 评论(0) 推荐(0)
摘要:聚合,分组,F与Q查询 测试环境搭建 import os if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "day06.settings") import django django.setup() 阅读全文
posted @ 2022-03-02 18:40 Snails蜗牛 阅读(114) 评论(0) 推荐(0)
摘要:模板语法 模板语法之传值 1、跟变量相关的都使用双括号 {{}} 2、跟逻辑相关的都使用 {% %} 3、模板文件中取值一律使用点语法 4、在模板文件里面的函数和类,不用加括号,会自动加括号调用, 不能传递参数 模板语法之过滤器 类似于python里面的内置方法 1、语法 {{变量|过滤器:参数}} 阅读全文
posted @ 2022-03-02 18:36 Snails蜗牛 阅读(422) 评论(0) 推荐(0)
摘要:文件上传 上传与接收 def index(request): if request.method == 'POST': print(request.FILES) # 获取文件数据 file_obj = request.FILES.get('file') # 文件对象 print(file_obj) 阅读全文
posted @ 2022-03-02 18:31 Snails蜗牛 阅读(64) 评论(0) 推荐(0)
摘要:JsonResponse对象 json格式的数据作用 前后端数据交互需要使用到json作为过渡,实现跨语言传输数据 JsonResponse对象 序列化字典 from django.http import JsonResponse def test(request): user_dict = {'u 阅读全文
posted @ 2022-03-02 18:26 Snails蜗牛 阅读(92) 评论(0) 推荐(0)
摘要:名称空间与虚拟环境 名称空间 当多个应用出现相同的别名时,正常情况下的反向解析是没有办法自动识别前缀的,这种情况下就需要用到名称空间 总路由 urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^app01/', include('app0 阅读全文
posted @ 2022-03-02 18:21 Snails蜗牛 阅读(75) 评论(0) 推荐(0)
摘要:常见的FieldType数据库字段类型 1、AutoField:自增Field域,自动增加的一个数据库字段类型,例如id字段就可以使用该数据类型,参数中必须填入primary_key=True 2、BigAutoField:和AutoField相同,只是比AutoField要大,参数中必须填入pri 阅读全文
posted @ 2022-03-02 18:18 Snails蜗牛 阅读(1060) 评论(0) 推荐(0)
摘要:Django之路由层 路由匹配 url方法第一个参数是正则表达式 只要第一个参数正则表达式能够匹配到内容,那么就会立刻停止往下匹配,直接执行对应的试图函数 / 的作用 ^ 的作用 $ 的作用 $ 可以精确到具体匹配那个字符 首页 浏览器页面不加 / 也能匹配到内容 无名分组与有名分组 无名分组 分组 阅读全文
posted @ 2022-03-02 18:17 Snails蜗牛 阅读(73) 评论(0) 推荐(0)