随笔分类 - python专题 / django相关
摘要:CBV源码分析: 前期准备: urls.py中 url(r'^login/',views.MyLogin.as_view()) views.py中 from django.views import View class MyLogin(View): def get(self,request): pr
阅读全文
摘要:配置Django实现数据库读写分离django在进行数据库操作的时候,读取数据与写数据(增、删、改)可以分别从不同的数据库进行操作。 1. 在配置文件中增加slave数据库的配置 2. 创建数据库操作的路由分发类在meiduo_mall/utils中创建db_router.py 3. 配置读写分离路
阅读全文
摘要:Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端。 这样我们就可以自己实现Web框架了。 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1"
阅读全文
摘要:完整的Django请求生命周期: django中间件: """ 请求来的时候,需要先经过中间件才能到达django后端:(urls,views,templates,models) 响应走的时候也需要经过中间件才能到达web服务网关接口 """ django默认的七个中间件: MIDDLEWARE =
阅读全文
摘要:多对多三种创建方式 1.全自动(推荐使用*): # 优势:不需要你手动创建第三张表 # 不足:由于第三张表不是你手动创建的,也就意味着第三张表字段是固定的无法做扩展 class Book(models.Model): title = models.CharField(max_length=32) p
阅读全文
摘要:Choices参数: class User(models.Model): username = models.CharField(max_length=32) age = models.IntegerField() choices = ( (1,'男'),(2,'女'),(3,'其他') ) gen
阅读全文
摘要:图书管理系统表与表之间建关系: 表关系分析: 表的设计: from django.db import models # Create your models here. class Book(models.Model): # id自动创建 可以不写 title = models.CharField(
阅读全文
摘要:创建一个新的app的步骤: 1.命令行: python3 manage.py startapp app名称 2.去settings中去注册app: 在INSTALLED_APPS中 # 创建的应用一定要在这里注册才能生效 INSTALLED_APPS = [ 'django.contrib.admi
阅读全文
摘要:常见字段: 使用频繁的字段: AutoField() —> int primary key auto_increment #int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 CharField() —> varchar()
阅读全文
摘要:Django测试环境搭建: 使用该方式不需要频繁的走web请求测试数据库操作语句: import os import sys if __name__ == "__main__": # django在启动的时候 就会往全局的大字典中设置一个键值对 值是暴露给用户的配置文件的路径字符串 os.envir
阅读全文