django项目settings.py的基础配置
一个新的django项目初始需要配置settings.py文件:
1. 项目路径配置
新建一个apps文件夹,把所有的项目都放在apps文件夹下,比如apps下有一个message项目,如果不进行此项配置,引用时应该这样:
from apps.message import views
由于所有的项目都在apps下,可以把apps设置为根路径:
(1) 在pycharm中右键点击app文件夹:
选择 'Mark Directory as', 选择 'Sources Root'
(2) 在settings中如下配置:
import sys sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
配置完成后,可以直接引用message:
from message import views
2. 数据库配置(*)
(1) 首先要在navicat里配置好一个数据库连接,并且在这个连接下新建一个数据库,假设新建的数据库名叫'testdjango'
(2) 在settings.py里如下配置:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'testdjango', 'USER': 'root', 'PASSWORD': '**********', 'HOST': 'localhost' } }
ENGINE改成mysql
NAME就是前面新建的数据库的name
USER就是数据库连接里的'用户名'
PASSWORD就是数据库连接里的密码
HOST需要注意下,需要和数据库连接里的'主机'保持一致,不能一个写127.0.0.1,另一个写localhost.不然会报错:
OperationalError: (2005, "Unknown MySQL server host '...' (11001)")这个错误
3. templates路径配置
项目里有一个templates文件夹是用来存放模板的,把它设置到TEMPLATES的DIRS下
修改红色的那句:
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, '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', ], }, }, ]
4. 静态文件路径配置
新建一个static文件夹,用于存放样式表等静态文件,然后把它设置为STATICFILES_DIRS
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
5. 配置admin语言:
LANGUAGE_CODE = 'zh-hans'
USE_TZ = False
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2015-09-29 css3动画中的steps值详解
2014-09-29 svn报错cleanup failed–previous operation has not finished; run cleanup if it was interrupted的解决办法