Python Django 创建应用全流程图解:从启动到模板渲染
本文详细图解Django项目中创建应用的全过程。涵盖使用manage.py创建应用、配置settings.py、编写视图函数、设置URL映射以及启动服务。重点解析ALLOWED_HOSTS配置错误及解决方法,并演示如何创建HTML模板并通过render函数返回页面,最终实现从浏览器访问本地服务并展示登录页面的完整流程。
Django 应用创建与基础配置
首先,在终端中输入以下命令来执行后续操作:
python manage.py startapp apitest

接着,将新创建的应用添加到名为 autotest 的项目目录下。
随后,打开项目的 settings.py 配置文件,在 INSTALLED_APPS 列表中加入“apitest”,具体位置如下图所示:

视图函数与 URL 映射配置
接下来,我们需要创建视图文件。
在 apitest 应用的 views.py 文件中,添加一个名为 test 的视图函数,用于处理请求。
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def test(request):
return HttpResponse('hello test')
配置完成后,进入 URL 映射环节。
为了将视图中的函数映射到浏览器前端页面,需要在 autotest/urls.py 文件中添加相应的路径配置,代码如下:
from django.contrib import admin
from django.urls import path
from apitest import views # 导入 views ,注意项目路径,打开时要 从autotest目录打开。
urlpatterns = [
path('admin/', admin.site.urls),
path('test/',views.test), # 添加 路径及函数
]
配置无误后,启动 Django 开发服务器。
python manage.py runserver
此时,如果在浏览器中访问 http://127.0.0.1:8000/,
可能会遇到如下错误提示:

根据错误提示,需要前往指定的 settings 文件下进行配置修改。

修改配置后,若再次出现如图错误,提示要求设置 ALLOWED_HOSTS = []。这是因为我们的服务地址为 127.0.0.1,因此需将该值设置为允许的主机列表。如果输入其他值,访问 127.0.0.1 时将无法成功访问。具体设置如下图所示:

完成上述配置后,再次执行启动命令,此时不再报错。
再次访问时,页面可能会提示找不到路径。

此时,需要补充访问的具体路径,操作如下:
在浏览器中访问 http://127.0.0.1:8000/test/,即可看到对应内容。

模板创建与页面渲染
接下来,创建用于展示内容的模板文件。
第一步,在 apitest 应用目录下创建 templates 文件夹,并在该文件夹内创建 login.html 文件。
在 login.html 文件中添加如下 HTML 代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="test/html; charset=UTF-8">
<title>Login</title>
</head>
<body>
<h1>login</h1>
<form method="post" action="login/">
{% csrf_token %}
<br> <input name="username" type="text" placeholder="username">
<br> <input name="password" type="password" placeholder="password">
{{ error }} <br>
<br> <button id="submit" type="submit">submit</button>
</form>
</body>
</html>
第二步,在 autotest/urls.py 中创建对应的 URL 映射。
from django.contrib import admin
from django.urls import path
from apitest import views # 导入 views ,注意项目路径,打开时要 从autotest目录打开。
urlpatterns = [
path('admin/', admin.site.urls),
path('test/',views.test), # 添加 路径及映射函数
path('login/',views.login), # 这里添加这个路径,当访问login/ 时 会映射到views里的login函数
]
第三步,在 apitest/views.py 中创建 login 视图函数。
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def test(request):
return HttpResponse('hello test')
def login(request):
return render(request,'login.html') # 这里返回 使用了render 返回指定页面内容。
第四步,访问登录页面:http://127.0.0.1:8000/login/,页面展示效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









