进入git工程目录
django-admin startproject demo_drf
-
使用pycharm打开新建的项目
-
安装drf依赖包
-
pip install djangorestframework==3.12.1
-
pip install djangorestframework-jwt==1.11.0
-
pip install django_filter==2.4.0
跨域配置
INSTALLED_APPS = [
…
‘corsheaders’, # 跨域
…
]
MIDDLEWARE = [
‘corsheaders.middleware.CorsMiddleware’, # 跨域
…
]
允许所有网站可以访问项目接口
CORS_ORIGIN_ALLOW_ALL = True
CORS跨域请求白名单设置, 只有在白名单中的网站才能访问接口
CORS_ORIGIN_WHITELIST = (
‘http://127.0.0.1:8080’,
‘http://localhost:8080’,
‘http://127.0.0.1:8081’,
‘http://localhost:8081’,
‘http://0.0.0.0:8080’,
‘http://mysyl.com:8080’,
)
允许携带cookie
CORS_ALLOW_CREDENTIALS = True
配置drf的settings
过滤器
1,安装 django-filter
2,注册应用
3,配置settings, 在view里配置可过滤的字段
4,使用 查询字符串携带过滤信息
REST_FRAMEWORK = {
# 文档报错: AttributeError: ‘AutoSchema’ object has no attribute ‘get_link’
# 用下面的设置可以解决
‘DEFAULT_SCHEMA_CLASS’: ‘rest_framework.schemas.AutoSchema’,
# 默认设置是:
# ‘DEFAULT_SCHEMA_CLASS’: ‘rest_framework.schemas.openapi.AutoSchema’,
# 异常处理器
# 'EXCEPTION_HANDLER': 'user.utils.exception_handler',
# 用户登陆认证方式
'DEFAULT_AUTHENTICATION_