Django 是一个免费开源的 Python Web 框架,可帮助您快速开发安全且可维护的 Web 应用程序。
在本教程中,我将逐步指导您使用 django 创建计算器应用程序。
这是一个适合初学者的教程,因此如果您是 Django 新手,可以继续学习。
(更|多优质内|容:java567 点 c0m)
我们的计算器应用程序会是什么样子?
具有加、减、乘、除运算的计算器
您可以在此GitHub:/SampurnaC/calculator 存储库中获取完整代码。
如何设置 Django 计算器项目
假设您的系统上安装了 Django,我们现在将致力于创建项目。为此,您需要打开终端并使用以下命令:
django-admin startproject calculator
此命令创建项目默认结构manage.py,其中包含 、 等文件,以及一个项目名称为包含settings.py、urls.py等文件的文件夹。我们将在开发应用程序时浏览这些文件。
项目创建完成后,我们需要将工作目录更改为项目目录。在 Linux 中,命令是cd calculator/.
下一步是创建一个calculatorapp使用以下命令命名的 Django 应用程序:
python manage.py startapp calculatorapp
models.py该应用程序包含、views,py、admin.py、migrations等文件。
创建应用程序后,第一件重要的事情是将应用程序注册到文件INSTALLED_APPS列表中settings.py。
为此,您需要导航到settings.pyDjango 项目内的文件,即calculator本教程中的文件。该settings.py文件包含INSTALLED_APPS列表,您需要将应用程序名称添加到列表中。因此,该INSTALLED_APPS列表应如下所示:
INSTALLED_APPS = [
'calculatorapp',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
现在应用程序已注册,我们已准备好处理该项目。
如何添加路线
现在,让我们开始添加路线。您需要urls.py在目录中创建一个文件calculatorapp。添加代码如下:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
在这里,您需要先导入pathfrom django.urls,然后再导入views。
在urlpatterns列表中,您需要传递您的视图函数,我们将很快创建该函数。
但首先,让我们将此应用程序 URL 文件注册到项目urls.py文件中。
因此,您需要打开urls.py计算器目录中的文件并添加以下代码:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('calculatorapp.urls')),
]
这里,它包括 的 URL calculatorapp。如果您想为您的 添加任何新的 URL calculatorapp,您可以从文件中执行此操作calculatorapp/urls.py。
如何编写视图
现在,如果您尝试访问localhost:8000/URL,您将收到错误,因为它正在寻找home视图函数。/路线的视图函数是home,由于没有home视图,因此会出错。
访问根页面时终端出错
在 Django 中,有两种类型的视图:基于函数的视图和基于类的视图。在本教程中,我们将使用基于函数的视图,它们以def关键字开头。
要修复上述错误,您需要转到views.py其中的文件calculatorapp并创建一个home视图函数。
def home(request):
pass
如何将模板添加到应用程序
现在,如果您尝试访问该localhost:8000/URL,您将收到不同的错误。正如您从下面的屏幕截图中看到的,它正在寻找一些响应来返回。
浏览器查找视图响应时出错
pass因此,您需要渲染 HTML 模板,而不是像使用随机文本那样。模板用于呈现动态 HTML 内容。
def home(request):
return render(request, 'home.html')
正如您在视图中看到的home,它返回home.html模板。
现在,您需要在应用程序的根目录中创建一个模板文件夹,这calculatorapp在本教程中。
在此模板文件夹中,您需要创建一个home.html文件。
该home.html模板将包含带有不同计算器按钮的表单。
将home.html包含以下代码:
<div class="center">
<h1>Basic Calculator</h1>
<form action="result">
<input type="number" name="number1" placeholder="Enter first number">
<br>
<br>
<input type="number" name="number2" placeholder="Enter second number">
<br>
<br>
<button type="submit" name="add">Add</button>
<button type="submit" name="subtract">Subtract</button>
<button type="submit" name="multiply">Multiply</button>
<button type="submit" name="divide">Divide</button>
</form>
</div>
<style>
.center {
margin: auto;
width: 60%;
border: 3px solid #a5addb;
padding: 10px;
}
</style>
上面的代码包含一个HTML带有两个输入字段和四个按钮的简单表单。有一些样式可以在中心显示代码并带有一些边框。
上面代码中需要注意的重要一点是<form action="result">,这意味着在提交表单时它将重定向到resultURL。
现在,如果您尝试在浏览器中执行任何操作,您将收到一个新错误,因为没有结果页面。
由于没有结果页面,按钮提交后抛出错误
如何添加结果页面的 URL
提交表单后,它正在寻找result path. 因此,下一步是创建视图result并为其添加模板和 URL。
更新后的urls.py文件如下:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
path('result/', views.result, name='result'),
]
如何为结果视图添加模板代码
列表中的第二个 URLurlpatterns正在查找视图result。那么,我们现在就开始吧。首先,我将向您展示视图的代码result,然后解释每一行的作用。
def result(request):
num1 = int(request.GET.get('number1'))
num2 = int(request.GET.get('number2'))
if request.GET.get('add') == "":
ans = num1 + num2
elif request.GET.get('subtract') == "":
ans = num1 - num2
elif request.GET.get('multiply') == "":
ans = num1 * num2
else:
ans = num1 / num2
return render(request, 'result.html', {'ans': ans})
现在,我们来分解一下上面的代码:
-
它从表单中获取的值number1和number2输入字段中获取值。
-
然后它根据单击的按钮检查条件。
-
由于所有按钮都有不同的名称,单击这些按钮会在 URL 中提供空字符串值。并在此基础上添加add、subtract、multiply和 的条件divide。
-
result.html它使用上下文呈现模板ans。Django 中的上下文是一个字典,其中包含可以传递给模板的键值对。
现在,您需要在文件夹result.html内创建一个文件templates并添加以下代码:
<div class="center">
The result is:
<h1>{{ans}}</h1>
<a href="{% url 'home' %}">Go Back</a>
</div>
<style>
.center {
margin: auto;
width: 60%;
border: 3px solid #a5addb;
padding: 10px;
}
</style>
在这里,它显示 的值ans。它还包含home具有页面一些基本样式的 URL。
在 Django 中,双大括号{{}}用于显示变量的值。变量输出上下文中的值。
最后,我们完成了在 Django 中创建一个具有加法、减法、乘法和除法等基本功能的计算器应用程序。
结论
这是在 Django 中创建基本计算器应用程序的方法。
在本教程中,您了解了如何处理视图、模板、URL 以及使 Django 应用程序正常运行所需的配置。
我在这篇文章中没有讨论任何有关模型的内容。因此,如果您想将记录保存在数据库中,您可以进一步尝试。
我希望您觉得本教程有用。
(更|多优质内|容:java567 点 c0m)
标签:py,视图,Django,应用程序,计算器,home,django From: https://www.cnblogs.com/web-666/p/17521844.html