从零开始:Django 项目搭建全流程(附详细步骤与代码示例)

从零开始:Django 项目搭建全流程(附详细步骤与代码示例)

作为 Python 最流行的 Web 框架之一,Django 以其 "batteries-included" 的设计理念,让开发者能快速搭建功能完善的 Web 应用。本文将带大家从 0 到 1 完成一个 Django 项目的基础搭建,涵盖环境配置、数据库连接、应用开发等核心步骤,新手也能轻松上手~

第一步:准备开发环境(PyCharm + Django)

  1. 安装 PyCharm
    推荐使用 PyCharm ***munity Edition(免费)或 Professional(付费,功能更全),官网下载地址:PyCharm: The only Python IDE you need,按向导完成安装即可。

  2. 配置 Django 环境
    打开 PyCharm,创建新项目时选择 "Virtualenv" 虚拟环境(避免依赖冲突),然后通过终端安装 Django:

    bash

    pip install django
    
     

    验证安装成功:

    bash

    django-admin --version  # 输出Django版本号即成功
    

第二步:创建 Django 项目

在 PyCharm 终端执行以下命令,创建名为myproject的 Django 项目(项目名可自定义):

bash

django-admin startproject myproject

执行后会生成项目目录,结构如下:

plaintext

myproject/
├── manage.py          # 项目管理脚本(核心工具)
└── myproject/         # 主配置目录
    ├── __init__.py
    ├── settings.py    # 项目配置文件
    ├── urls.py        # 主路由配置
    ├── asgi.py        # ASGI部署配置
    └── wsgi.py        # WSGI部署配置

第三步:切换数据库(从 SQLite 到 MySQL)

Django 默认使用 SQLite 数据库(适合快速测试),但生产环境通常用 MySQL,以下是切换步骤:

  1. 创建 MySQL 数据库
    登录 MySQL 终端,创建项目专用数据库(例如mydb):

    sql

    CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    
  2. 安装 MySQL 驱动
    Django 连接 MySQL 需要驱动,推荐mysqlclient

    bash

    pip install mysqlclient
    
  3. 修改 settings.py 配置
    打开myproject/settings.py,找到DATABASES配置,替换为 MySQL 信息:

    python

    运行

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

第四步:创建应用(App)

Django 项目由多个 "应用"(App)组成,每个 App 负责特定功能(例如用户模块、商品模块)。创建名为myapp的应用:

bash

cd myproject  # 进入项目根目录(含manage.py的目录)
python manage.py startapp myapp

生成的应用目录结构:

plaintext

myapp/
├── __init__.py
├── admin.py     # 后台管理配置
├── apps.py      # 应用配置
├── migrations/  # 数据库迁移文件
├── models.py    # 数据模型(核心)
├── tests.py     # 测试文件
└── views.py     # 视图函数(处理请求)

第五步:注册应用到项目

创建的应用需在项目中注册才能生效,打开myproject/settings.py,在INSTALLED_APPS列表中添加应用名:

python

运行

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    # ... 其他默认应用 ...
    'myapp',  # 注册我们创建的应用
]

第六步:定义数据模型(Models)

Django 的 ORM(对象关系映射)允许通过 Python 类定义数据库表结构,无需直接写 SQL。在myapp/models.py中定义模型(例如一个简单的Article文章模型):

python

运行

from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=100, verbose_name="标题")  # 字符串字段
    content = models.TextField(verbose_name="内容")                # 文本字段
    create_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")

    def __str__(self):
        return self.title  # 后台显示标题

    class Meta:
        verbose_name = "文章"
        verbose_name_plural = "文章"  # 复数形式

第七步:配置 Admin 后台管理

Django 自带强大的 Admin 后台,可快速实现数据增删改查。在myapp/admin.py中注册模型:

python

运行

from django.contrib import admin
from .models import Article  # 导入我们定义的模型

# 注册模型(Admin后台将显示该模型的管理入口)
admin.site.register(Article)

第八步:生成数据库表(迁移操作)

模型定义后,需通过迁移命令生成数据库表:

  1. 生成迁移文件(记录模型变更):

    bash

    python manage.py makemigrations
    
     

    执行后会在myapp/migrations/目录生成迁移文件。

  2. 执行迁移(创建 / 更新数据库表):

    bash

    python manage.py migrate
    
     

    此时 MySQL 中的mydb数据库会自动创建myapp_article表(Django 自动生成表名)。

第九步:创建模板文件(Templates)

模板用于存放 HTML 文件,实现页面展示。在myapp目录下创建templates文件夹,再在其中创建应用同名文件夹(避免模板冲突),最后新建 HTML 文件:

plaintext

myapp/
└── templates/
    └── myapp/  # 必须与应用名一致
        └── index.html  # 示例模板

index.html示例内容:

html

预览

<!DOCTYPE html>
<html>
<head>
    <title>我的Django页面</title>
</head>
<body>
    <h1>Hello, Django!</h1>
    <p>当前文章列表:</p>
    <ul>
        {% for article in articles %}  <!-- Django模板语法:循环展示数据 -->
            <li>{{ article.title }}</li>
        {% endfor %}
    </ul>
</body>
</html>

第十步:编写视图函数(Views)

视图函数负责处理用户请求、查询数据,并返回模板。在myapp/views.py中定义视图:

python

运行

from django.shortcuts import render
from .models import Article  # 导入模型

def index(request):
    # 查询所有文章数据
    articles = Article.objects.all()
    # 将数据传递给模板(context是字典,键为模板中使用的变量名)
    return render(request, 'myapp/index.html', {'articles': articles})

第十一步:配置应用路由(App URLs)

路由用于映射 URL 到视图函数。在myapp目录下创建urls.py(应用路由文件):

python

运行

from django.urls import path
from . import views  # 导入视图函数

urlpatterns = [
    # 配置路由:访问"/"时执行views.index函数
    path('', views.index, name='index'),
]

第十二步:主项目路由分发

主项目的urls.py需要将应用路由纳入管理,实现路由分块。修改myproject/urls.py

python

运行

from django.contrib import admin
from django.urls import path, include  # 导入include用于路由分发

urlpatterns = [
    path('admin/', admin.site.urls),  # Admin后台路由
    path('myapp/', include('myapp.urls')),  # 将"/myapp/"开头的URL交给myapp处理
]

第十三步:启动开发服务器

一切配置完成后,启动 Django 开发服务器:

bash

python manage.py runserver

终端会显示类似以下信息:

plaintext

Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

此时可通过浏览器访问:

  • Admin 后台:http://127.0.0.1:8000/admin/(需先创建超级用户:python manage.py createsuperuser
  • 我们的页面:http://127.0.0.1:8000/myapp/

总结

以上就是 Django 项目从环境搭建到基础运行的完整流程,核心步骤可概括为:环境准备→项目 / 应用创建→数据库配置→模型定义→视图与模板开发→路由配置→启动服务

后续可以继续学习 Django 的表单处理、用户认证、静态文件管理等进阶内容,逐步完善应用功能。如果操作中遇到问题,欢迎在评论区交流~

转载请说明出处内容投诉
CSS教程网 » 从零开始:Django 项目搭建全流程(附详细步骤与代码示例)

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买