当前位置: 首页 > news >正文

Django \+ MySQL 的标准 Web 项目搭建-初级练习小项目

Django + MySQL 完整 Web 项目搭建教程

Django + MySQL 搭建 Web 项目完整教程

这是从零开始的完整搭建流程,包含环境配置、项目创建、数据库连接、迁移和运行,新手也能直接跟着做。

一、准备工作

1. 安装必要软件

确保你电脑已安装:

  • Python 3.8+(推荐 3.9~3.11)

  • MySQL 5.7 / 8.0(本地或远程数据库)

  • 一个代码编辑器(VS Code / PyCharm)

2. 创建虚拟环境(推荐)

打开终端 / 命令提示符,执行:

# 创建项目文件夹mkdirdjango_mysql_projectcddjango_mysql_project# 创建虚拟环境python-mvenv venv# 激活虚拟环境# Windowsvenv\Scripts\activate# Mac/Linuxsourcevenv/bin/activate

激活后,命令行前面会出现\(venv\)标识。

3. 安装依赖

# 安装Djangopipinstalldjango# 安装MySQL驱动(必须!连接MySQL核心依赖)pipinstallmysqlclient

如果安装mysqlclient失败:
Windows:先安装 Visual C++ Build Tools
Mac:brew install mysql\-connector\-c
Linux:sudo apt\-get install python3\-dev default\-libmysqlclient\-dev


二、创建 Django 项目和应用

1. 创建 Django 项目

django-admin startproject myproject.

\.代表在当前目录创建,避免嵌套文件夹。

2. 创建应用(Django 必须有应用才能写功能)

python manage.py startapp myapp

项目结构:

django_mysql_project/ ├── myproject/ # 项目配置目录 ├── myapp/ # 功能应用 ├── manage.py # 命令工具 └── venv/

三、配置 MySQL 数据库(核心步骤)

1. 提前创建 MySQL 数据库

打开 MySQL 客户端(Navicat / 命令行),执行:

CREATEDATABASEmydbDEFAULTCHARSETutf8mb4COLLATEutf8mb4_unicode_ci;

库名:mydb(后面配置会用到)

2. 修改项目配置文件myproject/settings\.py

① 注册应用

找到INSTALLED\_APPS,添加你的应用:

INSTALLED_APPS=['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','myapp',# 新增这一行]
② 修改数据库配置

找到DATABASES替换成以下配置:

DATABASES={'default':{'ENGINE':'django.db.backends.mysql',# 数据库引擎'NAME':'mydb',# 你刚才创建的数据库名'USER':'root',# MySQL用户名(默认root)'PASSWORD':'123456',# 你的MySQL密码'HOST':'localhost',# 本地数据库'PORT':'3306',# MySQL默认端口'CHARSET':'utf8mb4',# 编码}}

⚠️ 务必修改为你自己的 MySQL 密码


四、编写模型(数据表)

打开myapp/models\.py,创建一个测试表:

fromdjango.dbimportmodels# 创建用户表(示例)classUser(models.Model):# 字段:用户名,字符串,唯一username=models.CharField(max_length=20,unique=True,verbose_name="用户名")# 字段:年龄,数字age=models.IntegerField(default=0,verbose_name="年龄")# 字段:创建时间,自动添加create_time=models.DateTimeField(auto_now_add=True,verbose_name="创建时间")def__str__(self):returnself.usernameclassMeta:verbose_name="用户"verbose_name_plural="用户"

五、数据库迁移(生成数据表)

执行两条命令,Django 会自动在 MySQL 中创建表:

# 生成迁移文件python manage.py makemigrations# 执行迁移,同步到MySQLpython manage.py migrate

执行成功后,打开 MySQL 就能看到自动创建的所有表。


六、创建超级管理员(访问后台)

python manage.py createsuperuser

按提示输入:用户名、邮箱、密码(密码输入不显示,正常输入即可)。

注册模型到后台

打开myapp/admin\.py

fromdjango.contribimportadminfrom.modelsimportUser# 把User模型注册到后台admin.site.register(User)

七、运行项目

python manage.py runserver

启动成功后,访问:

  • 项目首页:http://127.0.0.1:8000/

  • Django 管理后台:http://127.0.0.1:8000/admin/

输入刚才创建的超级管理员账号,就能在后台增删改查数据了!


八、常见问题排查

  1. 报错:Access denied for user 'root'@'localhost'
    MySQL 密码错误,检查settings\.py中的PASSWORD

  2. 报错:Can't connect to MySQL server
    检查 MySQL 服务是否启动,端口是否为 3306。

  3. mysqlclient 安装失败
    按照前面的解决方案安装依赖库。


总结

  1. 搭建流程:创建虚拟环境 → 安装 Django+mysqlclient → 创建项目 / 应用 → 配置 MySQL → 迁移数据库 → 运行项目

  2. 核心配置:settings\.py中修改DATABASES

  3. 核心命令:makemigrations+migrate同步数据表

  4. 快速验证:运行服务后登录 admin 后台

按照这个教程,你已经完成了 Django + MySQL 的标准 Web 项目搭建!

http://www.jsqmd.com/news/798833/

相关文章:

  • LSI SAS 3008芯片阵列卡(如9361-8i)的Write-Back缓存设置:性能翻倍还是数据风险?
  • 滴滴二面:线上敲了个 DEL 命令,为何几万笔支付瞬间超时报错?深入Redis内核源码分析
  • CTF实战:从CRC校验错误到PNG图片隐写修复
  • 植物大战僵尸指导版下载2026最新版下载
  • 从电工到程序员:用西门子博途TIA Portal完成你的第一个设备故障诊断
  • 5分钟快速上手Video2X:AI视频超分辨率与帧插值实战指南
  • 从噪声到净源:有源电力滤波器(APF)如何重塑现代电网的“清洁”法则
  • Beyond Compare 4 跨平台激活与合规使用指南 (2024年更新)
  • 靠谱的赣州别墅大宅推荐厂家
  • ubuntu CLion 配置codex过程中遇到 403 Forbidden
  • 视频空间智能新标杆,镜像视界解锁港口全目标连续定位——多视角三角测量 + 视差计算算子,跨镜 ID 稳定、遮挡重构、轨迹无缝拼接
  • 用TensorFlow 2.x复现ACGAN:从MNIST手写数字生成到模型调优的保姆级实践
  • IAR for STM8优化实战:从空间告急到精准调控的生存指南
  • 从“无法扩展”到“动态增长”:我是如何给Nachos文件系统打上“扩容”补丁的
  • 别再被红波浪线吓退!西门子TIA Portal博途软件保姆级避坑指南(附仿真配置)
  • 大模型风口来袭!掌握AI Agent,抢占未来就业制高点
  • 告别“电音”和“吞字”:用RNNoise实战优化游戏语音与直播连麦的体验
  • 3步搞定Windows部署难题:这款批处理工具如何颠覆传统安装方式?
  • 计算机毕业设计Django+AI大模型知识图谱古诗词情感分析 古诗词推荐系统 古诗词可视化 大数据毕业设计(源码+LW+PPT+讲解)
  • 用MATLAB复现机载雷达杂波仿真:从Morchin模型到LFM信号处理的完整流程
  • 终极指南:如何用Nucleus Co-Op实现一台电脑4人分屏游戏
  • NoFences:彻底解决Windows桌面杂乱问题,免费开源桌面整理革命
  • 跳槽涨薪50%的秘密:不是技术更强,而是谈判策略更聪明
  • I2C验证避坑指南:解读DW_APB_I2C中VIP的角色与数据流(附virtual sequence实例)
  • RePKG终极指南:Wallpaper Engine PKG文件提取与TEX格式转换深度解析
  • 过拟合、小物体难检?深入复盘一个真实垃圾检测项目的调参踩坑记录
  • Google Slides × Gemini深度集成全解析(企业级AI演示生产力白皮书)
  • AI测试智能体(agent)实战:规划→执行→反思:14年测试教你从零手写一个能跑的Agent(附源码自取)
  • 明日方舟基建自动化终极指南:Arknights-Mower 完整使用教程
  • STM32 SPI驱动ICM20948九轴传感器:从CubeMX配置到数据读取的完整流程(附避坑指南)