使用 Django 构建 Python Web 应用程序

Django 是一个高级 Python Web 框架,它鼓励快速开发和简洁、实用的设计。它解决了 Web 开发的大部分麻烦,让开发人员可以专注于编写应用程序,而不是重新设计轮子。本文将指导您使用 Django 构建一个简单的 Web 应用程序。

Django 入门

在开始构建 Django Web 应用程序之前,您需要安装 Django。您可以使用 Python 的包安装程序 pip 安装 Django:

pip install django

安装 Django 后,您可以在终端或命令提示符中运行以下命令来创建一个新的 Django 项目:

django-admin startproject myproject

此命令创建一个名为 myproject 的新目录,其中包含开始所需的文件。导航到此目录:

cd myproject

创建 Django 应用程序

在 Django 项目中,您可以创建处理特定功能的单个应用程序。例如,您可能有一个用于用户身份验证的应用程序,另一个用于博客文章的应用程序等。要创建应用程序,请运行以下命令:

python manage.py startapp myapp

这将创建一个名为 myapp 的新目录,其中包含 models.pyviews.pytests.py 等文件。您将在此应用中定义模型、视图和模板。

定义模型

Django 模型定义数据的结构并以 Python 类的形式表示。您可以在应用程序内的 models.py 文件中定义它们:

from django.db import models

class BlogPost(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

定义模型后,您需要为它们创建数据库表。运行以下命令来应用迁移:

python manage.py makemigrations
python manage.py migrate

创建视图和模板

Django 视图处理应用程序的逻辑并与模型交互以在模板中呈现数据。可以在 views.py 文件中创建一个简单的视图:

from django.shortcuts import render
from .models import BlogPost

def home(request):
    posts = BlogPost.objects.all()
    return render(request, 'home.html', {'posts': posts})

上述代码从数据库中提取所有博客文章,并将它们传递给名为 home.html 的模板。home.html 模板存储在应用程序内名为 templates 的目录中:

<!DOCTYPE html>
<html>
<head>
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    <ul>
    {% for post in posts %}
        <li>{{ post.title }} - {{ post.created_at }}</li>
    {% endfor %}
    </ul>
</body>
</html>

配置 URL

要将视图连接到 URL,您需要定义 URL 模式。在应用目录中创建一个名为 urls.py 的文件,并添加以下代码:

from django.urls import path
from . import views

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

然后,将此应用程序的 URL 模式包含在主项目 urls.py 文件中:

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

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),
]

运行开发服务器

设置模型、视图、模板和 URL 后,您可以运行 Django 开发服务器来查看 Web 应用程序的运行情况:

python manage.py runserver

打开 Web 浏览器并导航到 http://127.0.0.1:8000/ 以查看正在运行的 Django Web 应用程序。

结论

Django 让您能够轻松地使用 Python 构建功能强大且可靠的 Web 应用程序。本指南介绍了设置 Django 项目、创建应用程序、定义模型、创建视图和模板、配置 URL 以及运行开发服务器的基础知识。借助 Django,您可以轻松构建可扩展且易于维护的 Web 应用程序。