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. 创建虚拟环境(推荐)

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

bash 复制代码
# 创建项目文件夹
mkdir django_mysql_project
cd django_mysql_project

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境
# Windows
venv\Scripts\activate
# Mac/Linux
source venv/bin/activate

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

3. 安装依赖

bash 复制代码
# 安装Django
pip install django

# 安装MySQL驱动(必须!连接MySQL核心依赖)
pip install mysqlclient

如果安装 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 项目

bash 复制代码
django-admin startproject myproject .

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

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

bash 复制代码
python manage.py startapp myapp

项目结构:

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

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

1. 提前创建 MySQL 数据库

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

sql 复制代码
CREATE DATABASE mydb DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;

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

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

① 注册应用

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

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

找到 DATABASES替换成以下配置:

python 复制代码
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,创建一个测试表:

python 复制代码
from django.db import models

# 创建用户表(示例)
class User(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):
        return self.username

    class Meta:
        verbose_name = "用户"
        verbose_name_plural = "用户"

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

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

bash 复制代码
# 生成迁移文件
python manage.py makemigrations

# 执行迁移,同步到MySQL
python manage.py migrate

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


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

bash 复制代码
python manage.py createsuperuser

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

注册模型到后台

打开 myapp/admin\.py

python 复制代码
from django.contrib import admin
from .models import User

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

七、运行项目

bash 复制代码
python manage.py runserver

启动成功后,访问:

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


八、常见问题排查

  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 项目搭建!

相关推荐
Noushiki4 小时前
MySQL索引优化实战:高效查询的黄金法则
数据库·sql·mysql
Larcher4 小时前
JS 变量提升:代码没动,为什么执行顺序就变了?
前端·javascript·前端框架
yingyima4 小时前
MySQL 事件调度器速查:核心语法与实战代码
前端
GISer_Jing4 小时前
Claude Code多Agent架构深度剖析
前端·人工智能·架构·自动化
comphub4 小时前
comp-hub:让你的 Vue 业务组件真正"活"起来
前端
AI砖家4 小时前
Claude Code 跳过确认完全指南:让 AI 自己完成开发任务
前端·人工智能·python·ai编程·代码规范
Dxy12393102164 小时前
Python 操作 MySQL 事务:从入门到避坑
android·python·mysql
KaMeidebaby4 小时前
卡梅德生物技术快报|Pull Down 实验在 lncRNA - 蛋白互作机制研究中的应用实例解析
大数据·前端·架构·spark·新浪微博
爱莉希雅&&&4 小时前
Zabbix监控初步搭建
linux·运维·数据库·mysql·zabbix
狼与自由4 小时前
mysql到clickhouse
数据库·mysql·clickhouse