zoukankan      html  css  js  c++  java
  • 【转】Python3使用Django2.x的settings文件详解

    # -*- coding:utf8 -*-
    import os
    
    # 项目路径
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    
    # 安全密钥,默认随机加密字符串
    SECRET_KEY = '36x5$p=6d2(pce!8tyjhciw4_j%r&85ql=h3(pst_2z4cqj)vf'
    
    # 调试模式,项目上线即变更为 Flase 关闭 DEBUG 模式
    DEBUG = True
    
    # 项目上线需要填写,自行调试无需填写。可以使用 '*' 通配符
    ALLOWED_HOSTS = []
    
    
    # 应用定义
    INSTALLED_APPS = [                              # 安装过的 APP 列表,换句话说需要加载的应用列表,有些是系统内置的
        'django.contrib.admin',                     # 后台管理系统
        'django.contrib.auth',                      # 用户认证系统
        'django.contrib.contenttypes',              # 记录 model 内容类型(Django的ORM框架)
        'django.contrib.sessions',                  # sessions会话访问功能,标识用户身份记录相关用户信息
        'django.contrib.messages',                  # 消息提示功能
        'django.contrib.staticfiles',               # 查找静态资源路径(需要手动指定),与尾部【STATICFILES_DIRS】对应
        'APP',                                      # 手动创建增加的 APP 名称
    ]
    
    # 中间件(处理Django的request和response对象的钩子,Django接受到用户请求经过中间件处理请求,并执行相关处理反馈给用户),中间件的加载顺序不能错!!!
    MIDDLEWARE = [
        'django.middleware.security.SecurityMiddleware',                # 内置的安全机制,保护用户与网站的通信安全
        'django.contrib.sessions.middleware.SessionMiddleware',         # 会话session功能
        'django.middlewart.locale.LocaleMiddleware',                    # 支持中文语言
        'django.middleware.common.CommonMiddleware',                    # 处理请求信息,规范化请求内容
        'django.middleware.csrf.CsrfViewMiddleware',                    # 开启 CSRF(跨站请求伪造) 防护功能
        'django.contrib.auth.middleware.AuthenticationMiddleware',      # 内置的用户认证系统
        'django.contrib.messages.middleware.MessageMiddleware',         # 内置的信息提示功能
        'django.middleware.clickjacking.XFrameOptionsMiddleware',       # 防止恶意程序点击劫持
    ]
    
    # 根目录配置
    ROOT_URLCONF = 'DjangoBlog.urls'
    
    # 模版信息配置
    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',       # 定义模版引擎
            # 内置模版引擎有 Django Templates 和 jinja2.Jinja2
            'DIRS': [os.path.join(BASE_DIR, 'APP/templates/')],                 # 指定模版静态文件的物理路径
            'APP_DIRS': True,                                                   # 是否在APP里查找模版
            'OPTIONS': {                                                        # 用户填充在 RequestContext 上下文的调用函数选项,一般不需要修改
                'context_processors': [                                         # 上下文处理列表
                    'django.template.context_processors.debug',                 # 调试
                    'django.template.context_processors.request',               # 请求
                    'django.contrib.auth.context_processors.auth',              # 认证
                    'django.contrib.messages.context_processors.messages',      # 消息
                ],
            },
        },
    ]
    
    # 部署服务器时使用的 wsgi 模块
    WSGI_APPLICATION = 'DjangoBlog.wsgi.application'
    
    
    # Database
    # https://docs.djangoproject.com/en/2.1/ref/settings/#databases
    
    # 数据库连接配置设置
    DATABASES = {
        'default': {                                            # 默认数据库
            'ENGINE': 'django.db.backends.sqlite3',             # 连接sqlite3数据库引擎
            'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),       # 连接数据库名称和路径
                },
        'MyMQL': {                                              # 连接mysql数据库名称
            'ENGINE': 'django.db.backends.mysql',               # 连接mysql数据库引擎
            'NAME': '数据库名称',
            'USER': '数据库用户名',
            'PASSWORD': '数据库密码',
            'HOST': '主机地址',
            'POST': '3306',
        }
    }
    
    
    # Password validation
    # https://docs.djangoproject.com/en/2.1/ref/settings/#auth-password-validators
    
    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',
        },
    ]
    
    
    # Internationalization
    # https://docs.djangoproject.com/en/2.1/topics/i18n/
    
    #LANGUAGE_CODE = 'en-us'
    LANGUAGE_CODE = 'zh-hans'           # 语言设置为中文
    TIME_ZONE = 'UTC'                   # 时区设置
    USE_I18N = True
    USE_L10N = True
    USE_TZ = True
    
    
    # Static files (CSS, JavaScript, Images)
    # https://docs.djangoproject.com/en/2.1/howto/static-files/
    
    STATIC_URL = '/static/'
    # URL静态访问名,如:http://127.0.0.1:/static/index.html。
    # 默认APP下的static目录
    # 可以使用 STATICFILES_DIRS参数指定路径
    
    STATICFILES_DIRS = (os.path.join(BASE_DIR,"APP/templates"),)
    # 静态文件指定的路径,可以有多个,元组或列表都可
    # 与【INSTALLED_APPS】加载项 【django.contrib.staticfiles】 对应
    
    STATIC_ROOT = 'APP/html'            # 配合 python manage.py collectstatic 命令使用,指定存放所有项目的静态文件目录,一般用于项目上线使用

    转自:https://my.oschina.net/zhaojunhui/blog/2992058

    谢谢

  • 相关阅读:
    [51nod1299]监狱逃离
    [51nod1206]Picture
    noi 2016 游记
    [Codeforces 696D] Legen...
    [bzoj2574] [Poi1999]Store-Keeper
    [bzoj1227] [SDOI2009]虔诚的墓主人
    [bzoj3979] [WF2012]infiltration
    Docker
    SpringBoot实现登录
    SpringBoot第一次案例
  • 原文地址:https://www.cnblogs.com/zhzhang/p/10164398.html
Copyright © 2011-2022 走看看