文章分类 -  Django

摘要:django在进行数据库操作的时候,读取数据与写数据(增、删、改)可以分别从不同的数据库进行操作。 1. 在配置文件中增加slave数据库的配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '10. 阅读全文
posted @ 2019-11-12 19:48 阿磊小哥哥呀 阅读(96) 评论(0) 推荐(0)
摘要:在Django配置文件中,设置邮箱的配置信息 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.163.com' EMAIL_PORT = 25 #发送邮件的邮箱 EMAIL_HOST_U 阅读全文
posted @ 2019-11-12 19:47 阿磊小哥哥呀 阅读(95) 评论(0) 推荐(0)
摘要:使用Celery完成发送短信 在meiduo/meiduo_mall下创建celery_tasks用于保存celery异步任务。 在celery_tasks目录下创建config.py文件,用于保存celery的配置信息 broker_url = "redis://127.0.0.1/14" 在ce 阅读全文
posted @ 2019-11-12 19:45 阿磊小哥哥呀 阅读(84) 评论(0) 推荐(0)
摘要:跨域CORS 我们为前端和后端分别设置了两个不同的域名 位置域名 前端 www.meiduo.site 后端 api.meiduo.site 现在,前端与后端分处不同的域名,我们需要为后端添加跨域访问的支持。 我们使用CORS来解决后端对跨域访问的支持。 使用django-cors-headers扩 阅读全文
posted @ 2019-11-12 19:44 阿磊小哥哥呀 阅读(100) 评论(0) 推荐(0)
摘要:我们在验证完用户的身份后(检验用户名和密码),需要向用户签发JWT,在需要用到用户身份信息的时候,还需核验用户的JWT。 关于签发和核验JWT,我们可以使用Django REST framework JWT扩展来完成。 文档网站http://getblimp.github.io/django-res 阅读全文
posted @ 2019-11-12 19:42 阿磊小哥哥呀 阅读(87) 评论(0) 推荐(0)
摘要:配置 1. 修改settings/dev.py 文件中的路径信息 我们将Django的应用放到了 工程目录/meiduo_mall/apps目录下,如果创建一个应用,比如users,那么在配置文件的INSTALLED_APPS中注册应用应该如下: INSTALLED_APPS = [ ... 'me 阅读全文
posted @ 2019-11-12 19:37 阿磊小哥哥呀 阅读(103) 评论(0) 推荐(0)
摘要:apps 存放Django的应用 libs 存放第三方的库文件 settings 存放配置文件的目录,分为开发dev和线上prod utils 存放项目自己定义的公共函数或类等 docs 用于存放一些说明文档资料 scripts 用于存放管理脚本文件 阅读全文
posted @ 2019-11-12 19:33 阿磊小哥哥呀 阅读(76) 评论(0) 推荐(0)
摘要:1. 安装依赖 REST framewrok生成接口文档需要coreapi库的支持。 pip install coreapi 2. 设置接口文档访问路径 在总路由中添加接口文档路径。 文档路由对应的视图配置为rest_framework.documentation.include_docs_urls 阅读全文
posted @ 2019-11-12 19:29 阿磊小哥哥呀 阅读(197) 评论(0) 推荐(0)
摘要:REST framework提供了异常处理,我们可以自定义异常处理函数。 from rest_framework.views import exception_handler def custom_exception_handler(exc, context): # 先调用REST framewor 阅读全文
posted @ 2019-11-12 19:28 阿磊小哥哥呀 阅读(578) 评论(0) 推荐(0)
摘要:分页Pagination REST framework提供了分页的支持。 我们可以在配置文件中设置全局的分页方式,如: REST_FRAMEWORK = { 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagina 阅读全文
posted @ 2019-11-12 19:27 阿磊小哥哥呀 阅读(107) 评论(0) 推荐(0)
摘要:限流Throttling 可以对接口访问的频次进行限制,以减轻服务器压力。 使用 可以在配置文件中,使用DEFAULT_THROTTLE_CLASSES 和 DEFAULT_THROTTLE_RATES进行全局配置, REST_FRAMEWORK = { 'DEFAULT_THROTTLE_CLAS 阅读全文
posted @ 2019-11-12 19:26 阿磊小哥哥呀 阅读(460) 评论(0) 推荐(0)
摘要:可以在配置文件中配置全局默认的认证方案 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework.authentication.BasicAuthentication', # 基本认证 'rest_framework 阅读全文
posted @ 2019-11-12 19:23 阿磊小哥哥呀 阅读(227) 评论(0) 推荐(0)
摘要:REST framework提供了两个router SimpleRouter DefaultRouter 1. 使用方法 1) 创建router对象,并注册视图集,例如 from rest_framework import routers router = routers.SimpleRouter( 阅读全文
posted @ 2019-11-12 19:21 阿磊小哥哥呀 阅读(151) 评论(0) 推荐(0)
摘要:使用视图集ViewSet,可以将一系列逻辑相关的动作放到一个类中: list() 提供一组数据 retrieve() 提供单个数据 create() 创建数据 update() 保存数据 destory() 删除数据 ViewSet视图集类不再实现get()、post()等方法,而是实现动作 act 阅读全文
posted @ 2019-11-12 19:19 阿磊小哥哥呀 阅读(259) 评论(0) 推荐(0)
摘要:1. 两个基类 1)APIView rest_framework.views.APIView APIView是REST framework提供的所有视图的基类,继承自Django的View父类。 APIView与View的不同之处在于: 传入到视图方法中的是REST framework的Reques 阅读全文
posted @ 2019-11-12 19:17 阿磊小哥哥呀 阅读(99) 评论(0) 推荐(0)
摘要:视图的继承关系: 视图的方法与属性: 阅读全文
posted @ 2019-11-12 19:14 阿磊小哥哥呀 阅读(71) 评论(0) 推荐(0)
摘要:1. Request REST framework 传入视图的request对象不再是Django默认的HttpRequest对象,而是REST framework提供的扩展了HttpRequest类的Request类的对象。 REST framework 提供了Parser解析器,在接收到请求后会 阅读全文
posted @ 2019-11-12 19:12 阿磊小哥哥呀 阅读(109) 评论(0) 推荐(0)
摘要:如果我们想要使用序列化器对应的是Django的模型类,DRF为我们提供了ModelSerializer模型类序列化器来帮助我们快速创建一个Serializer类。 ModelSerializer与常规的Serializer相同,但提供了: 基于模型类自动生成一系列字段 基于模型类自动为Seriali 阅读全文
posted @ 2019-11-12 19:11 阿磊小哥哥呀 阅读(85) 评论(0) 推荐(0)
摘要:1. 验证 使用序列化器进行反序列化时,需要对数据进行验证后,才能获取验证成功的数据或保存成模型类对象。 在获取反序列化的数据前,必须调用is_valid()方法进行验证,验证成功返回True,否则返回False。 验证失败,可以通过序列化器对象的errors属性获取错误信息,返回字典,包含了字段和 阅读全文
posted @ 2019-11-12 19:10 阿磊小哥哥呀 阅读(105) 评论(0) 推荐(0)
摘要:我们在django shell中来学习序列化器的使用。 python manage.py shell 1 基本使用 1) 先查询出一个图书对象 from booktest.models import BookInfo book = BookInfo.objects.get(id=2) 2) 构造序列 阅读全文
posted @ 2019-11-12 19:07 阿磊小哥哥呀 阅读(105) 评论(0) 推荐(0)