django settings配置注释

本文详细解析了Django项目的配置文件,包括SECRET_KEY、DEBUG、ALLOWED_HOSTS等安全性设置,INSTALLED_APPS、MIDDLEWARE等应用及中间件配置,以及数据库、静态文件、模板路径等关键设置。
"""
Django settings for dev project.

Generated by 'django-admin startproject' using Django 2.0.4.

For more information on this file, see
https://docs.djangoproject.com/en/2.0/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/2.0/ref/settings/
"""

import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
# 前端地址路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATES_DIR = os.path.join(BASE_DIR,"templates")


# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/2.0/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'e$5%62s$efw8&2x09wwj&fgq&*=f1q#50i0%r3lbvyy3vv04q#'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = ['*']


# Application definition
# 应用模块的配置
# django.contrib.admin:admin管理后台站点
# django.contrib.auth:身份认证系统
# django.contrib.contenttypes:内容类型框架
# django.contrib.sessions:会话框架
# django.contrib.messages:消息框架
# django.contrib.staticfiles:静态文件管理框架
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'console',
    'demand_side_manage',
    'supply_side_manage',
    'system_manage',
    'media_manage',
    'sdk_dsp',
    'arms_manage',
    'statistic',
    'order',
]

# 中间件配置
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'flycat_utils.operate_history_middleware.OperateHistory'
]

ROOT_URLCONF = 'console.urls'

#模板(HTML页面)路径相关配置
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        # 前端路径配置
        'DIRS': [TEMPLATES_DIR,],
        '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',
            ],
        },
    },
]

# 网页服务网关协议消息
WSGI_APPLICATION = 'console.wsgi.application'


# Database
# https://docs.djangoproject.com/en/2.0/ref/settings/#databases
# 数据库的配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': "advertise_new",
        'USER': "jgame",
        'PASSWORD': "Ab!@#145",
        'HOST': "rm-uf68nleyp9f7t9dy9yo.mysql.rds.aliyuncs.com",
        'PORT': 3306
    }
}


# Password validation
# https://docs.djangoproject.com/en/2.0/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.0/topics/i18n/
# 语言
LANGUAGE_CODE = 'en-us'
# 时间
TIME_ZONE = 'Asia/Shanghai'

USE_I18N = True

USE_L10N = True

USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.0/howto/static-files/
# 加载前端静态资源配置
# 在Django 具体APP下建立的static目录,用来存放静态资源。
STATIC_URL = '/assets/'
# STATIC_ROOT = "/var/www/html/manager/dev/assets"
# 设置通用的静态资源,对应的目录不放在APP下,而是放在Project下
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "assets"),
)
# LOCAL_HOST = "http://adhub-dev.jiegames.com:8085/"
LOCAL_HOST = "http://127.0.0.1:8800/"

DATA_HOST = "http://47.96.30.57:8320/sp-server/"

### Django 数据库迁移添加注释的方法 在 Django 中,可以通过特定工具实现将模型中的 `help_text` 或其他自定义注释同步到数据库中作为字段或表的注释。以下是具体的实现方式: #### 安装必要的依赖 为了支持将 Django 模型的注释放入数据库,可以使用第三方库 `django-comment-migrate` 来完成此功能[^3]。 ```bash pip install django-comment-migrate ``` #### 配置 settings.py 文件 安装完成后,在项目的 `settings.py` 文件中注册该应用,将其加入 `INSTALLED_APPS` 列表中: ```python INSTALLED_APPS = [ ... 'django_comment_migrate', # 注册插件以支持注释迁移 ... ] ``` #### 给模型添加注释 通过设置模型类及其字段的相关属性来提供注释信息。通常情况下,可以在模型类上直接写明帮助文本或者描述性字符串。 ##### 表级别的注释 对于整个表格的整体说明,可以直接利用元选项里的 `verbose_name` 属性来进行标注: ```python from django.db import models class ExampleModel(models.Model): name = models.CharField(max_length=100) class Meta: verbose_name = "这是一个示例模型" db_table_comment = "用于演示目的创建的数据结构" # 自定义表级别注释 (仅部分版本支持) ``` > **注意**: 如果当前使用的 Django 版本较低可能并不完全兼容上述语法, 可能需要额外处理. ##### 字段级别的注释 针对单个列项的具体解释则推荐采用内置参数 `help_text`, 这样不仅有助于开发者理解业务逻辑同时也便于后续自动化流程提取这些备注并注入至底层SQL语句当中去[^2]. ```python class Product(models.Model): product_id = models.AutoField(primary_key=True, help_text="产品的唯一标识符") title = models.CharField(max_length=255, null=False, blank=False, help_text="商品名称") price = models.DecimalField(decimal_places=2,max_digits=8,null=False,default=0.00,help_text="销售价格") class Meta: managed = True db_table = 'product' ``` #### 执行数据迁移操作 当一切准备就绪之后便能够按照常规步骤执行 makemigrations 和 migrate 命令让更改生效的同时也会把之前设定好的那些附加信息一并带过去存储起来供以后查阅参考之用[^4]: ```bash python manage.py makemigrations --empty your_app_label python manage.py migrate ``` 以上过程即完成了向 MySQL 等关系型数据库引擎内部对象附加上清晰易懂的文字提示的功能开发工作流展示[^1]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值