Django常用配置说明

Django常用配置及其说明

settings文件

APPEND_SLASH

默认: True

True 时,如果请求的 URL 不符合 URLconf 中的任何模式,并且不以斜线结尾,则会发出一个 HTTP 重定向到相同的URL,并附加一个斜线。注意,重定向可能会导致 POST 请求中提交的任何数据丢失。

CACHES

默认:

{
    'default': {
        'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
    }
}

一个包含所有 Django 缓存配置的字典。它是一个嵌套的字典,其内容将缓存别名映射到一个包含单个缓存选项的字典中。

CACHES配置必须设置一个 default 缓存;也可以指定任何数量的附加缓存。如果你使用的是本地内存缓存以外的缓存后端,或者你需要定义多个缓存,则需要其他选项。以下是可用的缓存选项。

BACKEND

默认: '' (空字符串)

要使用的缓存后端。内置的缓存后端有:

  • 'django.core.cache.backends.db.DatabaseCache'
  • 'django.core.cache.backends.dummy.DummyCache'
  • 'django.core.cache.backends.filebased.FileBasedCache'
  • 'django.core.cache.backends.locmem.LocMemCache'
  • 'django.core.cache.backends.memcached.MemcachedCache'
  • 'django.core.cache.backends.memcached.PyLibMCCache'

你可以通过将 :set:BACKEND 设置为一个完全限定的缓存后端类的路径(例如 mypackage.backends.whatever.WhateverCache),来使用一个不在 Django 中的缓存后端。

DATABASES

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'mydatabaseuser',
        'PASSWORD': 'mypassword',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
ENGINE

默认: '' (空字符串)

要使用的数据库后端。内置的数据库后端有:

  • 'django.db.backends.postgresql'
  • 'django.db.backends.mysql'
  • 'django.db.backends.sqlite3'
  • 'django.db.backends.oracle'

你可以通过将 ENGINE 设置为一个完全限定的路径(例如: mypackage.backends.whatever),来使用一个不在 Django 中的数据库后端。

CONN_MAX_AGE

默认: 0

一个数据库连接的寿命,以秒为整数。使用 0 在每次请求结束时关闭数据库连接——这是 Django 的历史行为,使用 None 则是无限的持久连接。

DATA_UPLOAD_MAX_MEMORY_SIZE

默认: 2621440 (即 2.5 MB)。

请求体在引发 SuspiciousOperationRequestDataTooBig)之前的最大字节数。这个检查是在访问 request.bodyrequest.POST 时进行的,是根据请求的总大小计算的,不包括任何文件上传数据。你可以将其设置为 None 以禁用该检查。预计会收到非常大的上传表单的应用程序应该调整这个配置。

请求数据的数量与处理请求和填充 GET 和 POST 字典所需的内存量相关。如果不进行检查,大的请求可能会被用作拒绝服务的攻击载体。由于 Web 服务器通常不会进行深层的请求检查,所以不可能在这个层面进行类似的检查。

FILE_UPLOAD_MAX_MEMORY_SIZE

默认: 2621440 (即 2.5 MB)。

上传的文件在被传送到文件系统之前的最大尺寸(以字节为单位)

FILE_UPLOAD_PERMISSIONS

默认: 0o644

设置新上传文件的数字模式(即 0o644)。关于这些模式的更多信息,请参见 os.chmod()的文档。

如果 None,你会得到操作系统依赖的行为。在大多数平台上,临时文件的模式为 0o600,从内存中保存的文件将使用系统的标准 umask 保存。

出于安全考虑,这些权限不应用于存储在 FILE_UPLOAD_TEMP_DIR中的临时文件。

当使用 collectstatic管理命令时,这个配置也决定了收集的静态文件的默认权限。

EMAIL_BACKEND

默认: django.core.mail.backends.smtp.EmailBackend

用于发送邮件的后端。

EMAIL_HOST

默认: 'localhost'

用于发送电子邮件的主机

EMAIL_PORT

默认: 25

EMAIL_HOST_PASSWORD

默认: '' (空字符串)

EMAIL_HOST中定义的 SMTP 服务器使用的密码。这个配置和 EMAIL_HOST_USER中的密码一起使用。如果这两个配置中的任何一个为空,Django 就不会尝试验证。

EMAIL_HOST_USER

默认: '' (空字符串)

EMAIL_HOST中定义的 SMTP 服务器的用户名。如果为空,Django 将不会尝试认证

EMAIL_SUBJECT_PREFIX

默认: '[Django] '

django.core.mail.mail_adminsdjango.core.mail.mail_managers 发送邮件的主题行前缀。你可能会想要包含尾部的空格。

EMAIL_USE_LOCALTIME

默认:False

是否以当地时区(True)或 UTC(False)发送 SMTP Date 邮件头。

EMAIL_USE_TLS

默认:False

与 SMTP 服务器对话时是否使用 TLS(安全)连接。这用于显式 TLS 连接,一般在 587 端口。如果你遇到挂起的连接,请查看隐式 TLS 配置 EMAIL_USE_SSL

EMAIL_USE_SSL

默认:False

与 SMTP 服务器对话时是否使用隐式 TLS(安全)连接。在大多数电子邮件文档中,这种类型的 TLS 连接被称为 SSL。它通常在 465 端口使用。如果你遇到问题,请查看显式 TLS 配置 EMAIL_USE_TLS

注意 EMAIL_USE_TLSEMAIL_USE_SSL是相互排斥的,所以只能将其中一个设置为 True

EMAIL_SSL_CERTFILE

默认: None

如果 EMAIL_USE_SSL 或 [EMAIL_USE_TLSTrue`,你可以选择指定一个 PEM 格式的证书链文件的路径,用于 SSL 连接。

EMAIL_SSL_KEYFILE

默认: None

如果 EMAIL_USE_SSLEMAIL_USE_TLSTrue,你可以选择性地指定用于 SSL 连接的 PEM 格式化私钥文件的路径。

请注意,设置 EMAIL_SSL_CERTFILEEMAIL_SSL_KEYFILE不会导致任何证书检查。它们被传递给底层的 SSL 连接。

EMAIL_TIMEOUT

默认: None

指定阻止连接尝试等操作的超时时间,以秒为单位。

LOGGING

TEMPLATES

默认: [] (空列表)

一个包含所有 Django 模板引擎的配置的列表。列表中的每一项都是一个字典,包含了各个引擎的选项。

下面是一个配置,告诉 Django 模板引擎从每个安装好的应用程序中的 templates 子目录中加载模板:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'APP_DIRS': True,
        DIRS:[] # 默认: [](空列表);按照搜索顺序,引擎应该查找模板源文件的目录
    },
]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值