• 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语句在服务端打印。

  • 相关阅读:
    Java服务停止与开启
    跨域,php后端处理
    Mac 504 gateway timeout nginx
    Tp3.2 多数据库链接
    Redis 设置密码
    Redis 如何对外访问 lnmp安装
    tensorflow gpu安装
    ngx_http_upstream_check_module
    Nginx负载均衡+监控状态检测
    springboot+log4j2+slf4j控制台打印带sql日志
  • 原文地址:https://www.cnblogs.com/lwjnicole/p/12287803.html
Copyright © 2020-2023  润新知