Django 安装配置与基础 Web 应用开发指南

一只小鹿
一只小鹿
发布时间:2026-10-10| 5人浏览过
原创

本文详细介绍高级 Python Web 框架 Django 的核心特性与标准开发流程。涵盖从虚拟环境创建、框架安装、项目初始化,到数据模型定义、数据库迁移、视图编写、URL 路由配置及模板渲染的完整操作步骤。同时提供开发服务器启动验证方法,以及解决端口冲突和连接 MySQL 数据库的实用方案,帮助开发者快速掌握 Django 基础应用构建。

Django 核心特性与适用场景

Django 是一个高级 Python Web 框架,设计目标是让开发复杂的数据库驱动网站变得简单。它采用约定优于配置的原则,内置了用户认证、管理后台、表单处理等常用组件,遵循 DRY(Don't Repeat Yourself)原则避免代码冗余。其强大的安全性机制可自动防御 SQL 注入、跨站脚本(XSS)和点击劫持等常见漏洞,非常适合需要快速迭代且重视数据安全的后端系统开发。

环境配置与项目初始化

第1步:创建虚拟运行环境

目的:隔离项目依赖,防止系统级 Python 包产生版本冲突。
入口:终端命令提示符或集成开发环境(IDE)控制台。
操作:运行以下指令生成独立的虚拟目录:

python3 -m venv myenv
# Windows 激活方式:myenv\Scripts\activate
# macOS/Linux 激活方式:source myenv/bin/activate

参数说明:myenv 为自定义环境名称。
完成状态:当前命令行提示符前出现 (myenv) 标识,表示环境已激活。

第2步:安装 Django 框架

目的:获取官方最新的稳定版代码库。
入口:已激活的虚拟环境终端。
操作:执行包管理安装指令:

pip install django

安装完成后验证版本输出:

python -m django --version

完成状态:终端打印出类似 X.X.X 的版本号即表示安装成功。建议保持最新稳定版以获取安全补丁。

第3步:生成项目骨架文件

目的:构建包含核心配置文件的基础工程结构。
入口:终端任意工作目录。
操作:执行初始化命令:

django-admin startproject mysite

关键产出:自动生成 manage.py(项目管理脚本)与 mysite/ 目录(内含 __init__.py、settings.py、urls.py 等核心配置文件)。

搭建基础数据驱动页面

Django 采用 MVT(Model-View-Template)架构,逻辑上对应经典的 MVC 设计模式。以下为构建单一数据展示页面的标准操作流程。

第4步:定义数据模型

目的:将业务数据结构映射至数据库表。
入口:新建的应用目录 blog/models.py。
操作:继承 models.Model 类定义字段:

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

第5步:同步数据库结构

目的:将模型变更转化为具体的数据库建表语句并执行。
入口:项目根目录 mysite/。
操作:分两步执行迁移命令:

python manage.py makemigrations
python manage.py migrate

完成状态:终端显示 Migrations for 'blog' 及 Applying blog.0001_initial... OK,表明数据库表已成功创建。

第6步:编写视图处理逻辑

目的:接收 HTTP 请求,查询数据并返回响应对象。
入口:应用目录 blog/views.py。
操作:创建视图函数:

from django.shortcuts import render
from .models import Post

def index(request):
    posts = Post.objects.all()
    return render(request, 'blog/index.html', {'posts': posts})

第7步:配置 URL 路由

目的:建立浏览器访问路径与视图函数的映射关系。
入口:新建 blog/urls.py,并修改项目主路由 mysite/urls.py。
操作:
1. blog/urls.py 内容:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index, name='index'),
]

2. 项目主 mysite/urls.py 追加路由包含指令:

from django.urls import include, path

urlpatterns = [
    path('blog/', include('blog.urls')),
]

第8步:编写模板展示数据

目的:分离前端结构与动态逻辑,渲染最终 HTML 页面。
入口:应用目录下的 blog/templates/blog/index.html。
操作:编写基础模板:

<!DOCTYPE html>
<html>
<head>
    <title>博客文章列表</title>
</head>
<body>
    <h1>最新文章</h1>
    <ul>
        {% for post in posts %}
        <li>{{ post.title }} - {{ post.created_at|date:"Y-m-d" }}</li>
        {% endfor %}
    </ul>
</body>
</html>

启动服务与应用管理

第9步:运行本地开发服务器

目的:加载配置并监听网络请求,验证应用可用性。
入口:项目根目录 mysite/。
操作:

cd mysite
python manage.py runserver

完成状态:终端显示 Starting development server at http://127.0.0.1:8000/。在浏览器访问该地址,若看到默认欢迎页或已配置的页面,则项目启动成功。

第10步:创建独立功能应用

目的:实现业务模块解耦,便于后期维护与扩展。
入口:项目根目录 mysite/。
操作:

python manage.py startapp blog

完成状态:目录树新增 blog/ 文件夹,内含 migrations/、apps.py、models.py、views.py 等标准结构。

常见问题排查指南

Q1:启动服务时报错 Address already in use 或端口被占用如何解决?
Django 默认监听 8000 端口。若该端口已被其他进程占用,可手动指定替代端口:

python manage.py runserver 8080

Q2:如何切换 Django 连接 MySQL 生产数据库?
首先确保系统已安装 C 编译环境与 Python 头文件,随后通过包管理器安装驱动:

pip install mysqlclient

打开项目配置 mysite/settings.py,修改 DATABASES 字典参数:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'your_database_name',
        'USER': 'your_username',
        'PASSWORD': 'your_password',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

修改后再次执行 python manage.py migrate 即可对接外部数据库。
注意:在生产环境中部署前,务必在 settings.py 中将 DEBUG = True 改为 False,并配置合法的 ALLOWED_HOSTS 列表以防止 DNS 重新绑定攻击。

总结

掌握虚拟环境隔离、框架安装、项目骨架生成以及模型-视图-模板的标准流转路径,是高效使用 Django 进行后端开发的基石。通过本教程的操作,已具备独立搭建基础数据驱动型 Web 应用的能力。以上就是 Django 框架安装配置与基础应用开发的详细内容,更多关于 Python Web 后端技术实践的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。