📜  Django – 创建应用程序 |套装 – 1(1)

📅  最后修改于: 2023-12-03 15:00:26.804000             🧑  作者: Mango

Django – 创建应用程序 |套装 – 1

介绍

在 Django 中,应用程序是指用于执行特定功能的模块。Django 应用程序通常由一个模型(模型定义保存在应用程序的 models.py 文件中)、一些视图(这些视图可以访问模型数据并将其呈现为响应)、一个 URLconf(用于将请求路由到不同的视图),以及可选的模板、表单和静态资源组成。

在本教程中,我们将介绍如何创建一个简单的 Django 应用程序,并将其添加到现有的 Django 项目中。

前置条件

在继续之前,确保你已经安装并配置好了 Django。如果你还没有安装它,请查看 Django 安装指南

创建应用程序

要创建一个新的 Django 应用程序,请使用 python manage.py startapp 命令,后面跟着你想为应用程序所选的名称。

$ python manage.py startapp myapp

此命令将在你的 Django 项目中创建一个名为 myapp 的新目录,其中包含一些默认的 Python 文件。在这个目录中,你将会找到以下文件:

  • __init__.py :一个空文件,表明该目录是一个 Python 包。
  • admin.py :用于定义应用程序特有的 Django 管理页面。
  • apps.py :用于定义应用程序的配置。
  • models.py :用于定义应用程序的模型。
  • tests.py :用于编写应用程序的测试。
  • views.py :包含应用程序的视图。
注册应用程序

myapp/apps.py 文件中,Django 提供了一个 AppConfig 类,用于配置应用程序的名称、版本、模块等信息。默认情况下,应用程序的名称为该应用程序的目录名称,这里我们不做改变。

# myapp/apps.py
from django.apps import AppConfig

class MyappConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'myapp'

你需要在你的项目中告诉 Django 你已经创建了这个应用程序。为此,请打开 项目设置settings.py),并在 INSTALLED_APPS 列表中添加你的应用程序:

# myproject/settings.py
INSTALLED_APPS = [
    # ...
    'myapp',
]

现在,你的应用程序已经被注册到了 Django 项目中。

编写视图

myapp/views.py 文件中定义视图。视图是 Django 应用程序中最重要的部分之一,用于呈现 HTML 页面、JSON 数据、PDF 文件等等。

在这里,我们定义一个简单的视图,让它返回一个包含应用程序名称和当前时间的 HTML 页面。

# myapp/views.py
from django.shortcuts import render
from datetime import datetime

def home(request):
    now = datetime.now()
    context = {'app_name': 'My App', 'current_time': now}
    return render(request, 'myapp/home.html', context)
编写 URLconf

myapp/urls.py 文件中定义 URLconf,以将请求路由到不同的视图。Django 的 URLconf 机制使我们能够将 URL 映射到视图函数或类中。

例如,以下内容将把根 URL 映射到 home 视图:

# myapp/urls.py
from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]
创建模板

myapp/templates/myapp/home.html 文件中,我们可以创建 HTML 模板。

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>{{ app_name }}</title>
</head>
<body>
    <h1>Welcome to {{ app_name }}!</h1>
    <p>The current time is {{ current_time }}.</p>
</body>
</html>
测试应用程序

现在,我们已经完成了我们的 Django 应用程序,可以进行测试了。请使用以下命令启动 Django 开发服务器:

$ python manage.py runserver

然后,在浏览器中访问 http://localhost:8000/,你应该能够看到应用程序的主页了。

总结

在本教程中,我们介绍了如何创建一个简单的 Django 应用程序,并将其添加到现有的 Django 项目中。我们学习了如何定义模型、视图和 URLconf,并创建了一个简单的 HTML 模板。