使用 Django 进行 Python Web 开发的基本流程

Django 是一个强大的 Python Web 框架,可以帮助开发者快速构建Web应用。在本文中,我们将为初学者提供一个清晰的步骤指导,教你如何进行 Django 开发并实现基本的“增、删、改、查”功能。

开发流程概览

下面是 Django 开发的大致流程:

| 步骤               | 描述                                          |
|------------------|--------------------------------------------|
| 1. 安装 Django     | 在 Python 环境中安装 Django。                      |
| 2. 创建项目       | 使用 Django 命令行创建新的项目。                  |
| 3. 创建应用       | 在项目中创建一个应用(app)。                     |
| 4. 配置数据库     | 配置数据库连接信息并创建模型(models)。          |
| 5. 创建视图       | 创建处理请求逻辑的视图(views)。                  |
| 6. 配置 URL       | 将视图与 URL 进行关联。                           |
| 7. 创建模板       | 创建前端页面模板。                               |
| 8. 运行服务器     | 使用 Django 的开发服务器运行应用。              |
| 9. 部署应用       | 将应用部署到生产环境。                           |
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

每一步详细说明

1. 安装 Django

首先,确保你的系统上已安装 Python。然后,可以使用 pip 安装 Django:

pip install django  # 安装 Django
  • 1.
2. 创建项目

使用 Django 的命令行工具创建新项目:

django-admin startproject myproject  # 创建名为 myproject 的新项目
  • 1.

这将在当前目录下创建一个新的项目文件夹。

3. 创建应用

在项目中创建新应用:

cd myproject  # 进入项目文件夹
python manage.py startapp myapp  # 创建名为 myapp 的应用
  • 1.
  • 2.
4. 配置数据库

myproject/settings.py 文件中,找到 DATABASES 配置部分。设置数据库连接:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',  # 使用 SQLite 数据库
        'NAME': BASE_DIR / 'db.sqlite3',         # 数据库文件
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

然后,创建一个模型类:

from django.db import models  # 导入 models 模块

class Item(models.Model):  # 创建 Item 模型
    name = models.CharField(max_length=100)  # 定义一个字符类型字段
    description = models.TextField()           # 定义一个文本字段

    def __str__(self):
        return self.name  # 在管理页显示 Item 的名称
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
5. 创建视图

myapp/views.py 中,创建视图函数:

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

def item_list(request):  # 创建视图
    items = Item.objects.all()  # 获取所有 Item 对象
    return render(request, 'myapp/item_list.html', {'items': items})  # 返回模板
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
6. 配置 URL

myapp/urls.py 中定义 URL 路由:

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

urlpatterns = [
    path('', item_list, name='item_list'),  # 配置根 URL 路由
]
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

然后在 myproject/urls.py 中包含应用的 URL:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),  # 包含 myapp 的 URL
]
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
7. 创建模板

myapp/templates/myapp/item_list.html 中添加 HTML 模板:

<!DOCTYPE html>
<html>
<head>
    <title>Items</title>
</head>
<body>
    Item List
    <ul>
        {% for item in items %}
            <li>{{ item.name }}: {{ item.description }}</li>  <!-- 显示 Item 名称和描述 -->
        {% endfor %}
    </ul>
</body>
</html>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
8. 运行服务器

使用下面的命令运行 Django 开发服务器:

python manage.py runserver  # 启动开发服务器
  • 1.

访问 ` 可以查看应用。

9. 部署应用

部署 Django 应用通常需要将其托管在如 DigitalOcean、Heroku 等服务器上。具体步骤因平台而异,你可以查阅相关文档以获取详细信息。

数据模型关系图

下图展示了我们的数据模型关系:

Item int id PK 主键 string name 物品名称 string description 物品描述

结论

通过以上步骤,你可以搭建一个简单的 Django 应用。虽然这只是一个入门示例,但它涵盖了 Django 开发的基本流程。随着经验的积累,你可以深入学习 Django 中更高级的功能,如用户认证、API 开发等。希望这篇文章能帮助你迈出第一步,欢迎继续探索 Django 的世界!