0004 Django工程配置(01 常规配置)

  两个目录的区别:

  工程目录是指包含manage.py文件的目录

  配置目录是批包含settings.py文件的目录

  在配置目录中找到并打工settings.py文件,做以下配置:

01 DEBUG

  DEBUG=True:用于开发环境

  DEBUG=False:用于生产环境

02 ALLOWED_HOSTS

  指定发布服务器IP或域名,开发期直接输入'*'

ALLOWED_HOSTS = ['*']

03 INSTALLED_APPS

  把创建的APP或相应的包按以下格式加入到INSTALLED_APPS列表中。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',  # djangorestframework框架
    'GeneralTools.apps.GeneraltoolsConfig',
    'Applications.Organizations.apps.OrganizationsConfig',
    'Applications.WeChart.apps.WechartConfig',
]

 04 MIDDLEWARE

  设置中间件

  开发期禁止Csrf

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',
]

 05 TEMPLATES

  设置模板路径,即每个APP下的Templates路径。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
            os.path.join(BASE_DIR, 'Applications/Organizations/Templates'), # 新增模板路径
            os.path.join(BASE_DIR, 'Applications/WeChart/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',
            ],
        },
    },
]

06 时区和时间配置

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Chongqing'

 07 静态文件配置

  静态文件配置中,要增加STATIC_ROOT,这个路径是服务器路径,用于搜集静态文件,并产生静态文件目录。搜集静态文件,主要用于nginx web服务器部署。

STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)
STATIC_ROOT = '/publish/run/static'

08 设置媒体文件路径

  媒体文件路径,是指所有文件都可以通过url直接访问,而且是在url根目录下直接访问。比如:一张图片,一个视频,通过媒体文件路径的配置,就可以直接在浏览器中直接输入IP/文件名进行访问。当然,如果媒体文件路径下有目录,则需要用IP/媒体文件路径及文件名。

08.1 在Applications目录下创建一个名为11.txt的文件并输入一些内容。

08.2 在settings.py文件中,增加一项设置

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 

08.3 在工程主路由下增加一个路由:

from django.contrib import admin
from django.urls import path
from django.conf.urls.static import static
from BeefSoup import settings

urlpatterns = [
    path('admin/', admin.site.urls),
    # 其它路由
]
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

05.4 检查文件是否访问成功

  在media目录下创建一个文件,用浏览器访问,测试是否成功。

  注:如果是文本文件,则直接会在浏览器打开,其它文件,则会直接下载。

原文地址:https://www.cnblogs.com/dorian/p/12403264.html