随笔分类 -  Django

摘要:Django-model进阶 目录: QuerySet 中介模型 查询优化 extra 整体插入 QuerySet 中介模型 查询优化 extra 整体插入 QuerySet 1、可切片 2、可迭代 3、惰性查询 4、缓存机制 5、exists()与iterator()方法 总结: queryset 阅读全文
posted @ 2018-11-06 19:16 小学弟- 阅读(234) 评论(0) 推荐(0)
摘要:ORM优化查询的方式 ORM优化查询的方式 一、假设有三张表 Room id 1 2 .. 1000 User: id 1 .. 10000 Booking: user_id room_id time_id date 1 1 8:00 2017-11-11 1 2 8:00 2017-11-11 1 阅读全文
posted @ 2018-11-06 14:33 小学弟- 阅读(161) 评论(0) 推荐(0)
摘要:权限管理的三级菜单的流程及使用 权限控制 url代表了权限 表结构(6张表,ORM创建4个类,两个many2many会自动再生成两张表) 用户表 用户名 密码 多对多 roles(角色)角色表 标题 title 多对多 permission(权限)权限表 标题 title 权限 url URL别名 阅读全文
posted @ 2018-11-05 18:49 小学弟- 阅读(1861) 评论(0) 推荐(1)
摘要:extra过滤 extra 有些情况下,Django的查询语法难以简单的表达复杂的WHERE字句,对于这种情况, Django提供了extra() QuerySet修改机制 它能在QuerySet生成的SQL从句中注 入新字句。 参数之select The select 参数可以让你在 SELECT 阅读全文
posted @ 2018-11-02 19:03 小学弟- 阅读(258) 评论(0) 推荐(0)
摘要:权限管理 RBAC 权限管理 1. 为什么要有权限? 2. 开发一套权限的组件。为什么要开发组件? 3. 权限是什么? web 开发中 URL 约等于 权限 4. 表结构的设计 权限表 ID URL 1 /customer/list/ 2 /customer/add/ 用户表 ID name pwd 阅读全文
posted @ 2018-10-29 19:43 小学弟- 阅读(247) 评论(0) 推荐(0)
摘要:如果查询出的数据,被分页了,这个时候翻页的时候应该讲页数的参数和查询的参数一块在URL上显示 阅读全文
posted @ 2018-10-24 20:39 小学弟- 阅读(244) 评论(0) 推荐(0)
摘要:最初的版本 views.py <div class="panel panel-default"> <div class="panel-heading">用户信息</div> <div class="panel-body"> <table class="table table-hover table- 阅读全文
posted @ 2018-10-23 17:37 小学弟- 阅读(203) 评论(0) 推荐(0)
摘要:模板 变量 {{ }} 标签 {% %} if elif else for empty forloop() with...as csrf_token 过滤器 default length add data Y-m-d H:i:s 也可以在settings配置全局 DATATIME_FORMAT = 阅读全文
posted @ 2018-10-22 21:26 小学弟- 阅读(122) 评论(0) 推荐(0)
摘要:WSGIRequest对象 Django在接收到http请求之后,会根据http请求携带的参数以及报文信息创建一个WSGIRequest对象,并且作为视图函数第一个参数传给视图函数。这个参数就是django视图函数的第一个参数,通常写成request。在这个对象上我们可以找到客户端上传上来的所有信息 阅读全文
posted @ 2018-10-18 21:00 小学弟- 阅读(1029) 评论(0) 推荐(0)
摘要:目录: admin组件使用 admin源码解析 admin组件使用 Django提供了基于web的管理工具 Django 自动管理工具是 django.contrib 的一部分。你可以在项目的 settings.py 中的 INSTALLED_APPS 看到它: django.contrib是一套庞 阅读全文
posted @ 2018-10-14 13:56 小学弟- 阅读(374) 评论(0) 推荐(0)
摘要:session和cookie 一. 概念理解 你可能有留意到当你浏览网页时,会有一些推送消息,大多数是你最近留意过的同类东西,比如你想买桌子,上淘宝搜了一下,结果连着几天会有各种各样的桌子的链接。这是因为 你浏览某个网页的时候,WEB 服务器会先送一些资料放在你的计算机上,类似于你打的文字,选的一些 阅读全文
posted @ 2018-10-12 19:50 小学弟- 阅读(201) 评论(0) 推荐(0)
摘要:事务 把一些列的操作(步骤)当作一个事务 全部的步骤都成功才成功 经典例子:银行转账 代码实现: import os if name == 'main': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BMS.settings") import d 阅读全文
posted @ 2018-10-12 13:39 小学弟- 阅读(679) 评论(0) 推荐(0)
摘要:ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。 ORM在业务逻辑层和数据库层之间充当了桥梁的作用。 ... 阅读全文
posted @ 2018-10-11 21:58 小学弟- 阅读(207) 评论(0) 推荐(0)
摘要:目录: - Django ORM执行原生SQL - QuerySet方法大全 一、Django ORM执行原生SQL 二、QuerySet方法大全 阅读全文
posted @ 2018-10-11 17:00 小学弟- 阅读(552) 评论(0) 推荐(0)
摘要:import os if __name__ == '__main__': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BMS.settings") import django django.setup() from app01 import models books = models.Book.o... 阅读全文
posted @ 2018-10-11 16:57 小学弟- 阅读(454) 评论(0) 推荐(0)
摘要:在Django项目的settings.py文件中,在最后复制粘贴如下代码: LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'lo... 阅读全文
posted @ 2018-10-11 16:56 小学弟- 阅读(2110) 评论(0) 推荐(0)
摘要:一、缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者memcache中之 阅读全文
posted @ 2018-10-11 13:15 小学弟- 阅读(201) 评论(0) 推荐(0)
摘要:Django中的信号及其用法 Django中提供了"信号调度",用于在框架执行操作时解耦. 一些动作发生的时候,系统会根据信号定义的函数执行相应的操作 Django中内置的signal Model_signals Managemeng_signals Request/response_signals 阅读全文
posted @ 2018-10-10 15:31 小学弟- 阅读(162) 评论(0) 推荐(0)
摘要:form与model的终极结合。 class Meta:下常用参数: 阅读全文
posted @ 2018-10-09 15:04 小学弟- 阅读(193) 评论(0) 推荐(0)
摘要:1、数据源无法时时更新,有两种方法 方式一:重构构造方法(推荐) 方式二: 2、Form基本使用 3、用户登录 需要导入的模块 views.py login - 主动向form中添加错误信息 # form.add_error('password','用户名或密码错误') form.add_error 阅读全文
posted @ 2018-10-06 10:35 小学弟- 阅读(280) 评论(0) 推荐(0)