首页 > 其他分享 >Django的配置文件介绍

Django的配置文件介绍

时间:2023-02-27 23:34:28浏览次数:42  
标签:配置文件 middleware 介绍 django api auth luffy contrib Django

Django的配置文件

# pathlib   # 3.6 以后,处理文件路径的模块,原来是os,



# 面试题,md5是对称加密还是非对称加密
	-对称加密:加密的秘钥和解密的秘钥是同一个
    -非对称加密:加密使用公钥加密,解密使用私钥解密,使用公钥是不能解密的
    -摘要算法:没有解密这一说
    
    
    
# 运行django ,泡在0.0.0.0上,局域网内,所有人都能访问

from pathlib import Path
import os
import sys

# 项目根路径
# 我们就是要让小路飞路径作为项目根路径
BASE_DIR = Path(__file__).resolve().parent.parent  # 项目根路径, 小路飞luffy_api路径 D:\pythonProject03\luffy_api\luffy_api
# print(BASE_DIR)
# 把 apps 路径加入到环境变量
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
# 把BASE_DIR也加入到环境变量,以后直接从小路飞开始导起即可
sys.path.insert(0, str(BASE_DIR))
# print(sys.path)
# 以后从大路飞开始导起,或者小路飞开始导起,或者apps开始导起都可以


# 秘钥,涉及到加密的django中,都会用它
SECRET_KEY = 'django-insecure-!g(8l%fw_#t$pz$x4jdf#e3$b4+c%xzqyq@3zki08vj&i)z4k-'

# 项目是以debug模式运行,还是非debug模式运行

# 项目上线,要改成false
# debug=True 代码可以热更新
# 调试模式下,对开发者更友好:可以列出所有路径.报了错,前端能看到
DEBUG = False
# 它搭配debug=False,它的意思是,允许我的项目部署在哪个ip地址上,* 表示允许部署在所有地址上
ALLOWED_HOSTS = ['*']



# django 是多个app组成的,里面配置app,默认带的app,django内置的app
# django 是一个大而全的框架,有很多内置app:
#   admin后台管理,
#   auth权限管理,
#   contenttypes表中存app也表的关系,
#   sessions session表,django的session相关
#   messages:消息框架,flask讲闪现,是一样的东西
#  staticfiles:静态资源的

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',

    # 'luffy_api.apps.home',   # luffy_api在环境变量,直接从这一层开始导起, 太长了,以后就想 注册  home
    # 'luffy_api.apps.user'
    'home',
    'user'
]


# 中间件
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',  # 安全相关中间件
    'django.contrib.sessions.middleware.SessionMiddleware', # session相关中间件
    'django.middleware.common.CommonMiddleware',            # 带不带 / 问题
    'django.middleware.csrf.CsrfViewMiddleware',            # csrf 认证,生成csrf串
    'django.contrib.auth.middleware.AuthenticationMiddleware', # 用户认证
    'django.contrib.messages.middleware.MessageMiddleware',  #消息框架相关
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]


# 根路由
ROOT_URLCONF = 'luffy_api.urls'

# 模板文件
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],  # 坑,模板路径用列表,可以有多个
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]


# 项目运行的配置---》项目上线运行,使用uwsgi 运行  application()
WSGI_APPLICATION = 'luffy_api.wsgi.application'

# 用户名密码写死在代码中了,保证安全
name = os.environ.get('LUFFY_NAME', 'luffy')
password = os.environ.get('LUFFY_PASSWORD', 'Luffy123?')
# 拓展:有的公司,直接有个配置中心---》服务--》只用来存放配置文件


# 数据库配置,mysql 主从搭建完,读写分离
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'luffy',
        'USER': name,
        'PASSWORD': password,
        'HOST': '127.0.0.1',
        'PORT': 3306
    },
}

#忽略掉
AUTH_PASSWORD_VALIDATORS = [
    {
        'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
    },
]


# 国际化
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False


# 静态资源
STATIC_URL = '/static/'


# 
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'

标签:配置文件,middleware,介绍,django,api,auth,luffy,contrib,Django
From: https://www.cnblogs.com/xiao-fu-zi/p/17162368.html

相关文章

  • nginx介绍与配置详解
    内容介绍1、nginx基本概念(1)Nginx是什么,做什么事情Nginx是一个高性能的HTTP和反向代理web服务器,特点是占有内存少,并发能力强。因它的稳定性、简单的配置文件和低系统资......
  • 路飞项目,后台日志封装,全局异常处理,封装response,luffy数据库创建,软件开发模式,user模块
    内容回顾虚拟环境两个模块virtualenv—>virtualenv.exe用来创建虚拟环境virtualenvwrapper-win—>virtualenvwrapper.bat批处理文件,命令简化命令:创建mkvirtualev......
  • Django uwsgi问题解析
    通常情况下,部署Django应用到生产环境时都会通过uwsgi部署,uwsgi一些配置项配置问题有可能会导致服务出现502状态码或者其他超时等的情况常用到的配置项如下:reload-on-as......
  • 路飞之-后台日志封装-前后端分离的rbac项目演示-全局异常处理封装-封装Response-luffy
    目录路飞之-后台日志封装-前后端分离的rbac项目演示-全局异常处理封装-封装Response-luffy数据库创建-软件开发模式-User模块用户表-django的配置文件-开启media访问今日内......
  • 17.django中的Contenttypes
     Contenttypes是一个app,将Django中的所有定义的表定义在一张表中INSTALLED_APPS=['django.contrib.admin','django.contrib.auth','django.contrib.c......
  • Django中配置文件的详细解读
    Django中配置文件的详细解读importos.pathfrompathlibimportPath#Buildpathsinsidetheprojectlikethis:BASE_DIR/'subdir'.#1.项目的根目录#/User......
  • django项目环境搭建相关
    目录1.电脑pip换源2-虚拟环境的搭建3-项目后台(luffy项目)4-luffy后台配置5-luffy数据库6-user模块User表.md1.电脑pip换源pip安装源"""1、采用国内源,加速下载模块的速......
  • Druid(德鲁伊)数据池配置文件详解以及简单的实现
    搭建Druid数据池,需要导入两个包druid-1.1.5.jarmysql-connector-java-5.1.41-bin.jar 首先在src目录下新建一个druid.properties配置文件,然后在这个文件中封装配置信......
  • django多表查询
      注意事项: 表的名称myapp_modelName,是根据模型中的元数据自动生成的,也可以覆写为别的名称 id 字段是自动添加的 对于外键字段,Django会在字段名上添加"......
  • django配置文件
    frompathlibimportPathimportosimportsys#项目根路径#我们就是要让小路飞路径作为项目根路径BASE_DIR=Path(__file__).resolve().parent.parent#项目根......