zoukankan      html  css  js  c++  java
  • 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目录下创建一个文件,用浏览器访问,测试是否成功。

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

  • 相关阅读:
    [CF895C]Square Subsets
    Brainf**k(一位数求max)
    [CF1019A]Elections
    [LOJ #2538][PKUWC 2018]Slay the Spire
    [CF911F]Tree Destruction
    [bzoj4832][Lydsy1704月赛]抵制克苏恩
    [洛谷P1420]最长连号
    [bzoj4872][Shoi2017]分手是祝愿
    [洛谷P1887]乘积最大3
    [洛谷P3743]kotori的设备
  • 原文地址:https://www.cnblogs.com/dorian/p/12403264.html
Copyright © 2011-2022 走看看