Django 框架基本操作(二)】的更多相关文章

一.设计表结构 1.班级表结构 表名:grade 字段:班级名称(gname).成立时间(gdate).女生总数(ggirlnum).男生总数(gboynum).是否删除(isDelete) 2.学生表结构 表名:student 字段:学生姓名(sname).学生性别(sgender).学生年龄(sage).学生简介(scontend).所属班级(sgrade).是否删除(isDelete) 二.配置数据库 注意:Django默认使用SQLite数据 在settings.py文件中,通过DATA…
一.权限组件的使用 # 用户信息表 class UserInfo(models.Model): name = models.CharField(max_length=32) # 写choice user_choice=((0,'普通用户'),(1,'会员'),(2,'超级用户')) # 指定choice,可以快速的通过数字,取出文字 user_type=models.IntegerField(choices=user_choice,default=0) pwd = models.CharFiel…
一.app 在Django中,APP可以用以下类比 大学 --------------------项目 计算机学院------------app01 土木学院 ------------ app02 1.app创建 方式一:在terminate命令行创建: python manage.py startapp app01(app名字) 亦可:pycharm菜单栏中 Tools --> run manage.py task ,然后在terminate输入命令 startapp app01(app名字)…
目录 跨域问题 一.同源策略 二.CORS(跨域资源共享) 三.CORS两种请求(简单请求与非简单请求) 1.简单请求(一次请求) 2.非简单请求(两次请求) 四.CORS在Django中的应用 1.简单请求 2.非简单请求 跨域问题 一.同源策略 只允许当前页面朝当前域下发请求,如果向其他域发请求,请求可以正常发送,数据也可以拿回,但是被浏览器拦截了 只有IP和端口号都相同才是同一个域 二.CORS(跨域资源共享) 整个CORS通信过程,都是浏览器自动完成,不需要用户参与.对于开发者来说,CO…
目录 Django缓存机制 一.什么是缓存 二.Django的6中缓存方式及配置(只需要改配置文件) 1.开发调试缓存(此模式为开发调试使用,实际上不执行任何操作) 2.内存缓存(将缓存内容保存至内存区域中) 3.文件缓存(将缓存内容保存至文件区域中) 4.数据库缓存(将缓存内容保存至数据库区域中) 5.Memcache缓存(使用python-memcached模块) 6.Memcache缓存(使用pylibmc模块) 三.缓存的应用 1.单页面使用缓存(用cache_page装饰器) 2.全局…
目录 ContentType组件 一.什么是ContentType组件 二.使用ContentType 三.使用场景总结 ContentType组件 一.什么是ContentType组件 contentType是Django内置的组件,可以方便我们快速的连表查询. 可以追踪项目中所有app和model的对应关系,并记录在ContentType表中 models.py文件的表结构写好后,通过makemigrations和migrate两条命令迁移数据后,在数据库中会自动生成一个django_con…
目录 分页器与版本控制 一.三种分页器 二.分页器 1.普通分页(PageNumberPagination) 2.偏移分页(LimitOffsetPagination) 3.加密分页(CursorPagination) 4.警告处理 三.版本控制 1.使用 2.反向解析 分页器与版本控制 一.三种分页器 普通分页 偏移分页 加密分页 二.分页器 # 路由 url(r'^books/', views.Book.as_view({'get':'get_all'})) 1.普通分页(PageNumbe…
目录 Django rest_framework-权限组件 一.权限组件的使用 1.使用语法 2.全局使用.局部使用.局部禁用权限 二.源码分析 1.Book中没有as_view 2.APIView的as_view 3.view = super(APIView, cls).as_view(**initkwargs) ---------------------> View中的as_view 4.return self.dispatch(request, *args, **kwargs) -----…
目录 Django rest_framework-认证组件 一.什么是认证 二.利用token记录认证过的用户 1.什么是token 2.token的原理 3.cookie.session.token的区别 三.drf的认证组件 1.基本使用 2.全局使用.局部使用.局部禁用认证 3.不存数据库的token实现认证 四.源码分析 1.Book中没有as_view 2.APIView的as_view 3.view = super(APIView, cls).as_view(**initkwargs…
目录 app注册.模板配置.静态文件配置.数据库连接配置post和get 一.app 二.模板配置 三.静态文件配置 四.数据库连接配置 五.get请求和post请求 六.新手三件套 七.登录功能案例 app注册.模板配置.静态文件配置.数据库连接配置post和get 一.app 在Django中,APP可以用以下类比 大学 --------------------项目 计算机学院------------app01 土木学院 ------------ app02 1.app创建 方式一:在ter…
四.Django简介 1.MVC与MTV模型 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的.松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示: MTV Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django的MTV分别是值: M…
一.路由控制 # 1.基本路由: url(r'^publish/$', views.PublishView.as_view()), # 2.半自动路径:views.PublishView.as_view({'get': 'list', 'post': 'create'})) -视图类必须继承:ViewSetMixin,这里的as_view是ViewSetMixin中重写的as_view方法 -继承ViewSetMixin的先后顺序:class TestAll(ViewSetMixin,APIVi…
一.解析器的作用 根据请求头 content-type 选择对应的解析器对请求体内容进行处理,将传过来的数据解析成字典 二.使用解析器 1.局部使用 在视图类中重定义parser_classes即可,默认能够解析formdata.urlencoded.json格式的数据 from rest_framework.parsers import JSONParser,FormParser class Test(APIView): # 定义两个,表示该是视图类,能够解析urlencoded和json格式…
一.作用 为了控制用户对某个url请求的频率,比如,一分钟以内,只能访问三次 二.自定义频率类 # 写一个频率认证类 class MyThrottle: visit_dic = {} visit_time = None def __init__(self): self.ctime = time.time() # 重写allow_request()方法 # request是request对象,view是视图类,可以对视图类进行操作 def allow_request(self, request,…
一.基本视图 class PublishView(APIView): def get(self, request): publish_list = Publish.objects.all() bs = PublishSerializers(publish_list, many=True) return JsonResponse(bs.data,safe=False) def post(self, request): # 添加一条数据 print(request.data) bs = Publis…
路由控制与响应器 一.路由控制 # 1.基本路由: url(r'^publish/$', views.PublishView.as_view()), # 2.半自动路径:views.PublishView.as_view({'get': 'list', 'post': 'create'})) -视图类必须继承:ViewSetMixin,这里的as_view是ViewSetMixin中重写的as_view方法 -继承ViewSetMixin的先后顺序:class TestAll(ViewSetMi…
目录 视图组件 一.基本视图 二.自定义的封装视图 三.利用mixin类和generice类编写视图 1.使用 2.源码 四.利用generics 下的ListCreateAPIView,RetrieveUpdateDestroyAPIView 1.使用 2.源码 五.使用ModelViewSet(不建议使用) 1.使用 2.源码 六.强调:ViewSetMixin魔法类 视图组件 一.基本视图 class PublishView(APIView): def get(self, request)…
解析器 一.解析器的作用 根据请求头 content-type 选择对应的解析器对请求体内容进行处理,将传过来的数据解析成字典 二.使用解析器 1.局部使用 在视图类中重定义parser_classes即可,默认能够解析formdata.urlencoded.json格式的数据 from rest_framework.parsers import JSONParser,FormParser class Test(APIView): # 定义两个,表示该是视图类,能够解析urlencoded和js…
目录 频率组件 一.作用 二.自定义频率类 三.内置的访问频率控制类 四.全局.局部使用 1.全局使用 2.局部使用 3.局部禁用 五.源码分析 1.as_view -----> view ------> dispatch ------> initial ----> check_throttles 频率控制 2.self.check_throttles(request) 3.allow_request() 4.self.throttled(request, throttle.wai…
转载自:http://www.cnblogs.com/liwenzhou/p/8296964.html Django框架简介 一.MVC框架和MTV框架(了解即可) MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller),具有耦合性低.重用性高.生命周期成本低等优点. 想要更详细的了解MVC模式? >> 点我 Django框架的设计模式借鉴了MVC框架的思想,也是…
一.MVC框架和MTV框架(了解即可) MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller),具有耦合性低.重用性高.生命周期成本低等优点. 想要更详细的了解MVC模式? >> 点我 Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性. Django框架的不同之处在于它拆分的三部分为:Model(模型).Template…
一.Django框架简介 MVC框架和MTV框架 MVC框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller),具有耦合性低.重用性高.生命周期成本低等优点. Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性. Django框架的不同之处在于它拆分的三部分为:Model(模型).Template(模板)和View(视…
一.Django框架 MVC框架和MTV框架 参考:https://www.cnblogs.com/taosiyu/p/11260016.html MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller),具有耦合性低.重用性高.生命周期成本低等优点. 想要更详细的了解MVC模式? >> 点我 Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低…
[原]本文根据实际操作主要介绍了Django框架下MySQL的一些常用操作,核心内容如下: ------------------------------------------------------------------------------------------------- 1. Linux环境下MySQL的安装与配置 2. [Linux]MySQL在Django框架下的基本操作 3. Django框架下,一些常用的数据库操作(增删改查 - python) 4. 本文相关的一些参考网…
django框架:   Models 1.基本创建 Django提供了一个抽象层("Model")的构建和管理Web应用程序的数据. Django使用一种新的方式,即:关系对象映射(Object Relational Mapping,简称ORM). 每个模型是一个Python类,子类django.db.models.model 模型中的每个属性代表一个数据库字段. # DEMO class Student(models.Model): name = models.CharField(m…
第三百二十一节,Django框架,发送邮件 全局配置settings.py EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' #发送邮件引擎 EMAIL_USE_TLS = False #是否以https方式 EMAIL_HOST = 'smtp.163.com' #邮件smtp服务器 EMAIL_PORT = 25 #端口 EMAIL_HOST_USER = '15284816568@163.com' #发件人 EMAI…
第三百二十节,Django框架,生成二维码 用Python来生成二维码,需要qrcode模块,qrcode模块依赖Image 模块,所以首先安装这两个模块 生成二维码保存图片在本地 import qrcode img = qrcode.make('http://www.jxiou.com') # img <qrcode.image.pil.PilImage object at 0x1044ed9d0> with open('test.png', 'wb') as f: img.save(f)…
Django框架,urls.py模块,views.py模块,路由映射与路由分发以及逻辑处理——url控制器 这一节主讲url控制器 一.urls.py模块 这个模块是配置路由映射的模块,当用户访问一个url地址时,通过这个路由映射模块,映射给对应的逻辑处理函数 urlpatterns等于的一个列表,列表里的一个元素就是一条路由映射 urlpatterns路由映射配置方式 参数说明: 一个正则表达式字符串一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串可选的要传递给视图函数的默认参…
利用 Python django 框架 输入汉字,数字,字符,等..转成二维码! 模块必备:Python环境 + pillow  + qrcode 模块 核心代码import qrcode qr = qrcode.QRCode( version=2, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=20, border=4, ) qr.add_data('你要生成的文件') qr.make(fit=True) img = q…
该篇文章介绍多对多的关系介绍 一.数据库设计 一个作者对应多个书籍 一个书籍对应多个作者 总结也就是多对多之间的关系 通过模型类创建多对多之间的关系表的时候,Django框架通过ORM创建三个表,分别是作者表,书籍表,记录作者id对应书籍id的表 如下: 书籍表Books 作者表Author 作者书籍表author_book 二.代码部分 models.py代码部分: class Books(models.Model): """ 图书模型类 """…