随笔分类 -  Django

Django基础知识
摘要:在我们用DRF视图集完成了查找全部部门,创建一个新的部门,查找一个部门,修改一个部门,删除一个部门的功能后,views.py的代码是这样子的: 现在需要新增一个功能,查询最新成立的部门。 这时,我们就需要自定义action方法了。 新增功能后的代码如下: 但是,还有一个问题,在视图集的路由设置里,本 阅读全文
posted @ 2018-11-11 17:02 苦瓜爆炒牛肉 阅读(2394) 评论(0) 推荐(1)
摘要:在使用DRF视图集时,往往需要配一大堆路由,例如: 实在是太麻烦了。 幸好DRF提供了两个router可以很方便地设置路由: SimpleRouter DefaultRouter 这两个router的使用方法都是一样的,只不过DefaultRouter多点功能,例如可以访问(url+.json)取得 阅读全文
posted @ 2018-11-11 16:22 苦瓜爆炒牛肉 阅读(906) 评论(0) 推荐(0)
摘要:# 原创,转载请留言联系 如果要把同一种http请求方法的多个接口放在同一个视图中,比如:查询多条数据和一条数据都是get请求,放在同一个视图里,应该怎么做呢??? 如果直接放在一起,会怎样呢? 当访问/departments时,匹配对路由,然后到达视图,找get请求的视图,先找到了ListAPIV 阅读全文
posted @ 2018-11-11 15:41 苦瓜爆炒牛肉 阅读(645) 评论(0) 推荐(0)
摘要:# 转载请留言联系 子类视图: 子类视图: 对比以及使用(GenericAPIView+五个拓展类 VS 子类视图) 对比以及使用(GenericAPIView+五个拓展类 VS 子类视图) 1.GenericAPIView+五个拓展类 2.子类视图 3.子类视图的源码分析 实际上就是把(Gener 阅读全文
posted @ 2018-11-11 11:16 苦瓜爆炒牛肉 阅读(498) 评论(0) 推荐(0)
摘要:五个扩展类 五个扩展类 这五个扩展类需要搭配GenericAPIView (或者GenericViewSet)一起使用:五个扩展类的需要调用GenericAPIView提供的序列化器与数据库查询的方法。 使用方法 使用方法 五个扩展类的源代码 五个扩展类的源代码 阅读全文
posted @ 2018-11-11 10:01 苦瓜爆炒牛肉 阅读(645) 评论(0) 推荐(0)
摘要:DRF的基类是APIView类,GenericAPIView类是APIView类的子类。 GenericAPIView类有什么存在的意义呢? 其实, 他主要提供了两个用处: 1.提供关于数据库查询的属性与方法 2.提供关于序列化器使用的属性与方法 详解: 先看一段小代码比较好理解,(继承APIVie 阅读全文
posted @ 2018-11-11 09:23 苦瓜爆炒牛肉 阅读(464) 评论(0) 推荐(0)
摘要:关于DRF基类APIView提供的Request和Response对象的作用,可以看我的另一篇博文:https://www.cnblogs.com/chichung/p/9939864.html 综合使用: 相应路由的配置: 阅读全文
posted @ 2018-11-10 19:54 苦瓜爆炒牛肉 阅读(805) 评论(1) 推荐(0)
摘要:# 转载请留言联系 1.Request对象 DRF传入视图的request对象,不再是Django默认的HttpRequest对象,而是扩展了HttpRequest类的Request类的对象。 REST framework 提供了Parser解析器,在接收到请求后会自动根据Content-Type指 阅读全文
posted @ 2018-11-10 16:51 苦瓜爆炒牛肉 阅读(1722) 评论(0) 推荐(0)
摘要:模型类序列化器 DRF提供了模型类序列化器: ModelSerializer 作用: 简化对应django模型类的序列化器的定义 ModelSerializer与常规的Serializer相同,但提供了: 基于模型类自动生成一系列字段 基于模型类自动为 Serializer 生成 validator 阅读全文
posted @ 2018-11-10 11:49 苦瓜爆炒牛肉 阅读(464) 评论(0) 推荐(0)
摘要:反序列化原理: 反序列化原理: Json字符串-->字典-->对象 反序列化的作用: 反序列化的作用: 1.校验参数的准确性 2.校验通过后,可以在数据库中保存或修改数据 反序列化的使用: 反序列化的使用: 首先定义序列化器: 功能一:校验参数的准确性 当我们想把一个字典转换为对象保存到数据库时,往 阅读全文
posted @ 2018-11-10 11:23 苦瓜爆炒牛肉 阅读(451) 评论(0) 推荐(0)
摘要:# 转载请留言联系 read_only read_only read_only表示只能读,不能进行修改。例如定义序列化器时,id字段通常指定read_only=True。在序列化时,即对象转为字典、JSON字符串时,字典、JSON字符串包含着id字段。但是反序列化时,即JSON字符串、字典转换为对象 阅读全文
posted @ 2018-11-10 10:05 苦瓜爆炒牛肉 阅读(2418) 评论(0) 推荐(0)
摘要:定义序列化器,通常是拿模型类的代码过来修改一下。但是如果遇到有关联属性的时候,应该怎么写呢? 假设有两个模型类,一个是员工,一个是部门。部门与员工是一对多关系。那么在定义序列器的时候怎么写关联属性的语句呢? 先把没有涉及关联属性的字段写成序列化器: 一对多关系中,多的那方的序列化器关联属性的写法: 阅读全文
posted @ 2018-11-09 21:00 苦瓜爆炒牛肉 阅读(2628) 评论(1) 推荐(0)
摘要:定义序列化器时,一般可以把模型类的文件拿来修改一下,然后就可以根据自定义字段生成了一个序列器。这个序列器可以用来序列化,也可以用来反序列化。 序列化器常用的字段类型 序列化器常用的字段类型 序列化器选项 序列化器选项 序列化器通用选项 序列化器通用选项 示例 示例 使用序列化器实现序列化(对象--> 阅读全文
posted @ 2018-11-09 19:52 苦瓜爆炒牛肉 阅读(634) 评论(0) 推荐(0)
摘要:# 转载请留言联系 用Django开发RESTful风格的API存在着很多重复的步骤。详细可见:https://www.cnblogs.com/chichung/p/9933861.html 过程往往都是,(1)把到前端请求的过来的json字符串,然后通过json.loads转换为字典,字典在转换为 阅读全文
posted @ 2018-11-09 17:08 苦瓜爆炒牛肉 阅读(1367) 评论(1) 推荐(1)
摘要:RESTful风格的要求:https://www.cnblogs.com/chichung/p/9933116.html 利用django原生的框架直接做RESTful的API开发是怎样的呢?感受一下: 同时,urls的设置也要restful一点: 结论:太麻烦了,还是得用 Django REST 阅读全文
posted @ 2018-11-09 10:53 苦瓜爆炒牛肉 阅读(1431) 评论(0) 推荐(1)
摘要:RESTful是什么? RESTful是什么? RESTful是一种开发理念。维基百科说:REST是设计风格而不是标准。 REST描述的是在网络中client和server的一种交互形式;REST本身不实用,实用的是如何设计 RESTful API(REST风格的网络接口),一种万维网软件架构风格。 阅读全文
posted @ 2018-11-09 08:54 苦瓜爆炒牛肉 阅读(1072) 评论(0) 推荐(0)
摘要:关于django的日志设置详细可以看下官方文档:https://yiyibooks.cn/xx/Django_1.11.6/topics/logging.html 示例: 如何记录日志: import logging logger = logging.getLogger('django') logg 阅读全文
posted @ 2018-11-07 20:14 苦瓜爆炒牛肉 阅读(1131) 评论(0) 推荐(0)
摘要:在设置文件里: import sys sys.path.insert(0,os.path.join(BASE_DIR,"要导包的目录名")) 用pycharm时,如果导包后没有自动提示,可以把导包的目录名标记为Sources Root 阅读全文
posted @ 2018-11-07 20:06 苦瓜爆炒牛肉 阅读(1368) 评论(0) 推荐(0)
摘要:1. Pycharm --> 工具栏 --> Edit Configurations --> 修改 settings 文件 2. 项目文件夹下的wsgi.py 3. 项目文件夹下的manage.py 4. .idea/xxx.iml(这个设置是为了让pycharm的Python Console正常运 阅读全文
posted @ 2018-11-07 20:02 苦瓜爆炒牛肉 阅读(917) 评论(0) 推荐(0)
摘要:通常redis都是用来保存session、短信验证码、图片验证码等数据。 在django上使用redis,先要安装一个包: pip install django-redis==4.8.0(我用的django是1.11.1版本) 在settings上配置: 在视图中使用: 阅读全文
posted @ 2018-11-07 19:57 苦瓜爆炒牛肉 阅读(633) 评论(0) 推荐(0)