📜  django 中的两个输入字符串总和 - Python (1)

📅  最后修改于: 2023-12-03 14:40:46.764000             🧑  作者: Mango

Django 中的两个输入字符串总和 - Python

欢迎来到本次主题为 Django 中的两个输入字符串总和 的介绍。在这篇文章中,我们将介绍如何使用 Django 框架来创建一个简单的应用程序,该应用程序将接收两个输入字符串,并将它们的总和展示出来。

前提条件

在开始之前,您需要确保已经安装了 Django 框架,并且熟悉一些基本的 Python 编程知识。

创建 Django 项目

首先,让我们通过以下命令创建一个新的 Django 项目:

django-admin startproject string_sum

这将创建一个名为 "string_sum" 的新项目文件夹,并在其中包含一些初始文件。

接下来,进入项目文件夹并创建一个新的 Django 应用程序:

cd string_sum
python manage.py startapp sum_app

这将在项目文件夹中创建一个名为 "sum_app" 的新应用程序。

编写视图函数

在 Django 中,视图函数用于处理来自用户的请求,并生成相应的响应。让我们在 sum_app 文件夹中的 views.py 文件中编写一个简单的视图函数:

from django.http import HttpResponse

def sum_strings(request):
    if request.method == 'POST':
        string1 = request.POST.get('string1')
        string2 = request.POST.get('string2')
        if string1 and string2:
            result = string1 + string2
            return HttpResponse(result)
        else:
            return HttpResponse('Invalid input!')
    return HttpResponse('Please submit the form.')

这个视图函数首先检查请求的方法是否为 POST,如果是,则获取两个输入字符串并计算它们的总和。如果输入字符串无效,则返回相应的错误消息。

配置 URL

接下来,我们需要将视图函数映射到一个 URL 上,以便在用户发起请求时能够访问它。让我们在 sum_app 文件夹中的 urls.py 文件中配置 URL:

from django.urls import path
from .views import sum_strings

urlpatterns = [
    path('sum/', sum_strings, name='sum'),
]

这个配置将我们的视图函数 sum_strings 映射到了 /sum/ 路径上。

编写模板文件

接下来,我们需要创建一个 HTML 模板文件,用于接收用户的输入并将其发送到视图函数。在 templates 文件夹中创建一个名为 sum.html 的新文件,并将以下内容添加到其中:

<!DOCTYPE html>
<html>
<head>
    <title>String Sum</title>
</head>
<body>
    <h1>String Sum</h1>
    <form action="{% url 'sum' %}" method="post">
        {% csrf_token %}
        <label for="string1">String 1:</label>
        <input type="text" name="string1" required><br>
        <label for="string2">String 2:</label>
        <input type="text" name="string2" required><br>
        <input type="submit" value="Submit">
    </form>
</body>
</html>

在这个模板中,我们创建了一个简单的表单,其中包含两个文本输入框和一个提交按钮。表单的 action 属性将请求发送到我们之前配置的 URL。

配置视图模板

最后,我们需要将视图函数与模板文件关联起来。打开 views.py 文件,并作出以下修改:

from django.shortcuts import render

def sum_strings(request):
    if request.method == 'POST':
        string1 = request.POST.get('string1')
        string2 = request.POST.get('string2')
        if string1 and string2:
            result = string1 + string2
            return render(request, 'sum.html', {'result': result})
        else:
            return render(request, 'sum.html', {'error': 'Invalid input!'})
    return render(request, 'sum.html')

这个修改将通过 render 函数将结果或错误消息作为上下文变量传递给模板文件。

运行应用程序

现在,我们已经完成了 Django 应用程序的编写。让我们通过以下命令运行它:

python manage.py runserver

在浏览器中访问 http://localhost:8000/sum/,您将看到一个简单的表单。在两个输入框中输入字符串,并点击提交按钮。您将在同一个页面上看到输入字符串的总和。

结论

在本文中,我们介绍了如何使用 Django 框架创建一个简单的应用程序,该应用程序接收两个输入字符串,并将它们的总和展示出来。我们循序渐进地介绍了 Django 项目的创建、视图函数的编写、URL 配置、模板文件的编写以及视图模板的配置。希望本文对您理解 Django 框架在处理用户输入和生成响应时的工作方式有所帮助。