django的settings

人のエゴで造られた 虚にだけはなりたくはなくて / 2024-04-22 / 原文

django的settings模板

jwt配置

from datetime import timedelta

# jwt配置
SIMPLE_JWT = {
     # Access Token的有效期
    'ACCESS_TOKEN_LIFETIME': timedelta(minutes=5), 
    
     # Refresh Token的有效期
    'REFRESH_TOKEN_LIFETIME': timedelta(days=7), 
    
    # 用于指定JWT在HTTP请求头中使用的身份验证方案。默认为"Bearer"
    "AUTH_HEADER_TYPES": ("Token",),  
    
     # 用于生成访问令牌和刷新令牌的序列化器。 改成你自己的即可
    "TOKEN_OBTAIN_SERIALIZER": "rest_framework_simplejwt.serializers.TokenObtainPairSerializer",
}

国际化

LANGUAGE_CODE = "zh-hans"

TIME_ZONE = "Asia/Shanghai"

USE_I18N = True

USE_TZ = False

继承auth的user表

AUTH_USER_MODEL = "app01.UserInfo"

drf的配置


REST_FRAMEWORK = {
    # response响应
    'DEFAULT_RENDERER_CLASSES': [
        'rest_framework.renderers.JSONRenderer',
        'rest_framework.renderers.BrowsableAPIRenderer',
    ],
    # request请求
    'DEFAULT_PARSER_CLASSES': [
        'rest_framework.parsers.JSONParser',
        'rest_framework.parsers.FormParser',
        'rest_framework.parsers.MultiPartParser'
    ],
    # 登录认证
    'DEFAULT_AUTHENTICATION_CLASSES': [
        "v1.authentication.AuthenticationFailed"
    ],
    # 权限认证
    'DEFAULT_PERMISSION_CLASSES': [
        "v1.permissions.UserPermission"
    ],
    # 频率控制
    'DEFAULT_THORTTLING_CLASSES': ["v1.throttling.CommonThrottling"]
}

coreapi

# 报错这个可以配置
#AttributeError: 'AutoSchema' object has no attribute 'get_link'

REST_FRAMEWORK = {
 'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema',
    # 新版drf schema_class默认用的是rest_framework.schemas.openapi.AutoSchema
}

数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        "NAME": "there",
        "HOST": "localhost",
        "USER": "root",
        "PASSWORD": "xm123",
        "PORT": 3306,
    }
}

simpleui

# 注册app
INSTALLED_APPS = [
    'simpleui',  # 这个名称  不是别的 放第一个位置 不要忘记逗号
]

# 修改logo
SIMPLEUI_LOGO = 'logo地址'
# 例如下面  这个地址可以是本地地址 也可以是网络地址 就是1:1的图片
SIMPLEUI_LOGO = '/media/img/logo/girl.jpg'

# 隐藏右侧SimpleUI广告链接和使用分析
SIMPLEUI_HOME_INFO = False
SIMPLEUI_ANALYSIS = False

# 隐藏最近的动作
SIMPLEUI_HOME_ACTION = False