Django基础配置(安装、新建项目、新建应用、设置静态文件夹、连接MySQL)
Basics
安装
安装及查看Django版本。
pip install django
# 指定版本安装
pip install django==2.2
python -m django --version
创建项目
在目标文件夹下执行:(需要将python/script加入环境变量)
django-admin startproject 项目名
执行后Django自动生成文件及文件夹:
ProjectName/ ----- ProjectName文件夹,可以随意重命名
manage.py ----Django管理文件的命令行工具
ProjectName/ ---- ProjectName同名子文件夹,Python包
__init__.py ----- 空文件,用于表示所在文件夹是一个Python包
settings.py ----- Django项目的配置文件
urls.py ----- Django项目的URL映射配置文件
asgi.py ----- ASGI Web服务器入口
wsgi.py ----- WSGI Web服务器入口
开启服务:
python manage.py runserver
开启服务同时指定8080端口:
python manage.py runserver 8080
开启服务同时监听所有网络公开IP
python manage.py runserver 0.0.0.0:8000
创建应用
python manage.py startapp appname
# 在指定文件夹中创建应用
cd 文件夹
python ../manage.py startapp 应用名
应用文件夹中的文件:
appname/ --- 应用名子文件夹
__init__.py
admin.py --- Django Admin后台的views文件
apps.py
migrations/
__init__.py
models.py --- Model文件,用于创建数据库模型并通过ORM管理数据
tests.py --- 用于写应用的测试代码
views.py --- Views文件,用于创建Django视图
注册应用:创建应用后需要将应用加入到项目的settings.py中:
INSTALLED_APPS = [
...
应用名.apps.应用名Config # 应用名config是在应用目录下apps.py中的类名
# 如果需要将应用文件移动到一个文件夹中,需要添加:
import sys, os
# 创建应用之后,把apps目录加入到sys.path中
import sys, os
sys.path.insert(0, BASE_DIR)
sys.path.insert(1, os.path.join(BASE_DIR, '文件夹名'))
INSTALLED_APPS = [
...
文件夹名.应用名.apps.应用名Config
# 应用名config是在应用目录下apps.py中的类名;文件夹名、应用名都根据对应的文件夹和用用名的大小写。
设置静态文件目录
静态文件目录配置
# 默认文件夹名应为static,如果要使用其他名字,则需要在settings.py中设置。
# Django默认的Static设置:
STATIC_URL = 'static/'
# 如果要将文件夹改为mystatic,则需要在应用目录中创建mystatic文件夹,并修改:
STATIC_URL = 'mystatic/'
# 如果要在项目文件夹中建立static文件夹统一管理,则需要在新建static文件夹后,修改:
STATICFILE_DIRS = [
os.path.join(BASE_DIR, 'static')
]
其他设置
# 修改语言
LANGUAGE_CODE = 'zh-hans'
# 修改时区
TIME_ZONE = 'Asia/Shanghai'
# 修改USE_TZ
USE_TZ = False
连接MySQL
安装Python的MySQL数据库驱动
修改settings.py中的数据配置
DATABASES = {
'default' :{
'ENGINE': 'django.db.backends.mysql',
'NAME': '数据库名',
'USER': '登录用户名',
'PASSWORD': '登录密码',
'HOST': '主机地址',
}
}
修改后重新migrate
python manage.py makemigrations
python manage.py migrate
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)