Python Django 创建应用全流程图解:从启动到模板渲染

Ryan
Ryan
发布时间:2026-10-13| 5人浏览过
原创

本文详细图解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/,页面展示效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。