Django项目settings.py文件基础配置

Posted lwjnicole

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django项目settings.py文件基础配置相关的知识,希望对你有一定的参考价值。

  Django设置文件包含了我们项目的所有Django安装配置,这个文件一般在项目的文件夹下,例如我们创建项目名为:myblog,那么这个配置文件settings.py就是myblog文件夹下

 

 

 一、在项目的根文件夹下创建static和media两个目录。static用来存放模板CSS、JS、图片等静态资源,media用来存放上传的文件。

  settings.py文件里找到SATTIC_URL,然后在后面加上如下代码:

myblog/settings.py

#设置静态文件目录和名称
STATIC_URL = \'/static/\'

#加入下面代码

#这个是设置静态文件夹目录的路径
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, \'static\'),
)
#设置文件上传路径,图片上传、文件上传都会存放在此目录里
MEDIA_URL = \'/media/\'
MEDIA_ROOT = os.path.join(BASE_DIR, \'media\')

  如果我们想在浏览器里访问自己上传的文件,则需要在urls里做如下的设置:

myblog/urls.py
from django.urls import re_path
from django.views.static import serve
from . import settings    # 导入配置文件settings.py

urlpatterns = [
    ...
    re_path(\'^media/(?P<path>.*)$\', serve, {\'document_root\': settings.MEDIA_ROOT}),
]

二、配置模板路径

  settings.py文件里找到TEMPLATES,设置\'DIRS\',然后修改如下代码:

myblog/settings.py
TEMPLATES = [
    {
        \'BACKEND\': \'django.template.backends.django.DjangoTemplates\',
        \'DIRS\': [os.path.join(BASE_DIR, \'templates\')],    # 修改这个地方,修改前为\'DIRS\':[]
        \'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\',
            ],
        },
    },
]
#然后在项目根目录下添加templates文件夹

三、设置域名访问权限

  settings.py文件里找到ALLOWED_HOSTS,然后修改如下代码:

myblog/settings.py
ALLOWED_HOSTS
= [] #修改前 ALLOWED_HOSTS = [\'*\'] #修改后,表示任何域名都能访问。如果指定域名的话,在\'\'里放入指定的域名即可

四、修改项目的语言和时区

  settings.py文件里找到LANGUAGE_CODE 和 TIME_ZONE,然后修改如下代码:

myblog/settings.py

#语言,修改前为英文
LANGUAGE_CODE = \'en-us\'
#修改后
LANGUAGE_CODE = \'zh-hans\' #语言修改为中文,主要针对admin页面

#时区,修改前
TIME_ZONE = \'UTC\'
#修改后
TIME_ZONE = \'Asia/Shanghai\'

五、注册APP(注册应用)

  settings.py文件里找到INSTALLED_APPS,然后修改如下代码:

myblog/settings.py
INSTALLED_APPS = [
    \'django.contrib.admin\',
    \'django.contrib.auth\',
    \'django.contrib.contenttypes\',
    \'django.contrib.sessions\',
    \'django.contrib.messages\',
    \'django.contrib.staticfiles\',
    \'blog\',
    # 添加APP的名称,新建的应用都要在这里添加
]

六、mysql数据库配置

  settings.py文件里找到INSTALLED_APPS,然后修改如下代码:

myblog/settings.py

########在settings.py中原来默认的sqlite3
DATABASES = {
    \'default\': {
        \'ENGINE\': \'django.db.backends.sqlite3\',
        \'NAME\': os.path.join(BASE_DIR, \'db.sqlite3\'),
    }
}
############修改成mysql如下
DATABASES = {
    \'default\': {
        \'ENGINE\': \'django.db.backends.mysql\',
        \'NAME\': \'blog\',    #你的数据库名称
        \'USER\': \'root\',   #你的数据库用户名
        \'PASSWORD\': \'\', #你的数据库密码
        \'HOST\': \'\', #你的数据库主机,留空默认为localhost
        \'PORT\': \'3306\', #你的数据库端口
    }}

七、设置打印日志到console

  settings.py文件中新增LOGGING,添加如下代码:

LOGGING = {
    \'version\': 1,
    \'disable_existing_loggers\': False,
    \'handlers\': {
        \'console\': {
            \'level\': \'DEBUG\',
            \'class\': \'logging.StreamHandler\',
        },
    },
    \'loggers\': {
        \'django.db.backends\': {
            \'handlers\': [\'console\'],
            \'propagate\': True,
            \'level\': \'DEBUG\',
        },
    }
}

  当我们的操作与数据库相关时 会将我们的写的语句翻译成sql语句在服务端打印。

以上是关于Django项目settings.py文件基础配置的主要内容,如果未能解决你的问题,请参考以下文章

Django基础—— 4.项目目录结构

Django 修改配置文件

Django之配置文件(settings.py)

Django基础篇

「Django框架」-拆分配置文件settings

django基础二