首页 后端开发 Python教程 Django Web 框架初学者指南:创建应用程序、视图、配置 URL 和模板

Django Web 框架初学者指南:创建应用程序、视图、配置 URL 和模板

Aug 06, 2024 pm 09:38 PM

使用 Django 构建 Web 应用程序,实用指南。?️ ???

胶囊 2:创建应用程序、视图、模板和配置路线

大家好,同志们,欢迎回到我们的 Django 教程系列!又是一周了,我们需要服用本周的 KodeCapsule。在上一篇文章中,我们介绍了 Django 框架的基础知识、它的架构、模型、视图、模板以及如何在 Django 中启动新项目。如果您还没有阅读上一篇文章,我建议您在继续之前先回去阅读那篇文章。所以,喝杯咖啡,让我们开始吧。

文章大纲

  1. 简介

  2. Django 中的应用程序是什么?

  3. 在 Django 中创建应用程序

  4. 为您的应用程序创建视图

  5. 为您的应用创建 URL

  6. 向您的应用添加模板

  7. 结论

  8. 参考文献

简介

在本教程中,我们将深入构建和使用任何 Django 项目的核心组件。我们将了解如何在 Django 中创建应用程序、配置设置、创建视图来处理请求以及设置 URL 路由。学完本教程,您应该明白

  1. 如何在 Django 中创建新应用

  2. 如何将此应用程序包含在您的项目设置中

  3. 如何为您的应用定义 URL 模式

  4. 如何编写视图来显示请求和响应

  5. 如何向您的应用添加模板

让我们开始吧!!!!!!

Django 中的应用程序是什么?

django 中的应用程序是执行特定功能的模块。应用程序可以像项目中的一个功能一样简单,例如联系表单,也可以像博客或支付系统等成熟的组件一样简单。应用程序被设计为可在不同项目中重复使用。将代码组织到应用程序中可以实现代码的可重用性、可维护性和可扩展性。应用程序和项目之间的区别在于,应用程序在项目中执行特定功能,并且可以在多个项目中使用,但项目由特定网站的配置和应用程序的集合组成。应用程序的一些关键特征是:

  1. 模块化:Django 应用程序本质上是模块化的,这意味着您可以独立开发和测试您的应用程序并重用它们。这使您的项目更有组织性和可管理性。

  2. 可重用性:由于应用程序是独立的,因此您可以轻松地在其他 Django 项目中重用它们。例如,您可以为一个项目创建一个博客应用程序,然后在另一个项目中使用同一应用程序而不进行修改。

  3. 关注点分离:每个应用程序处理项目的特定方面。这种分离使得管理应用程序的不同部分变得更加容易。

  4. 封装:应用程序封装模型、视图、模板、静态文件和其他与特定功能相关的组件,使它们在自己的目录中组织起来。

在 Django 中创建应用程序

在上一篇文章中我们已经设置了我们的项目。我们将创建我们的第一个应用程序。这个应用程序将是一个博客应用程序。

1.要创建应用程序,请导航到项目文件夹和终端并运行此命令。确保您已激活虚拟环境。

python manage.py startapp 博客

此命令创建一个新目录,其中包含以下文件夹结构中的所有必要的安装文件:

├──博客/
│ ├── 迁徙/
│ │ └──init.py
│ ├── init.py
│ ├── admin.py
│ ├── apps.py
│ ├── models.py
│ ├── 测试.py
│ └──views.py

我。 migrations/:此文件夹存储您应用程序的所有数据库迁移

二. init.py:这是一个空文件,通知 python 将该目录视为 python 包。

三. admin.py:django 管理界面的配置文件。 admin.py 文件的功能是在 django 管理面板中注册您的应用程序模型。稍后我们会看看 Django admin

四。 apps.py:这包含应用程序的配置,也可以包含应用程序的元数据。

V. models.py:此脚本是我们为应用程序优化数据模型的地方。

六。 test.py:test.py 脚本是您为应用程序编写测试用例的地方

七。 views.py:此脚本包含您为应用程序定义的视图。这些视图处理您的应用程序的业务逻辑。

2.将您的博客应用程序添加到项目设置中已安装的应用程序列表中。

INSTALLED_APPS = [ 'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.messages', 
'django.contrib.staticfiles', 

#my apps
'blog',
]
登录后复制

创建视图

视图在您的应用程序中发挥着重要作用。应用程序的业务逻辑在视图中定义。视图充当表示层和数据层之间的粘合剂。 Django 中有两种主要类型的视图,基于函数的视图和基于类的视图(有关这方面的更多详细信息,请参阅后续文章)。在本教程中,我们将坚持使用基于函数的视图。

1.在博客应用中打开views.py文件

2.从http包中导入HttpResponse

从 django.http 导入 HttpResponse

3.定义一个名为 home 的函数(您可以随意命名该函数)。该函数将返回一个 HttpResponse

from django.http import HttpResponse

 def home(request):
      return HttpResponse("<h1>Welcome to the Home Page</h1>")
登录后复制

为您的应用程序创建 URL

为了让用户访问网络应用程序的不同部分,您必须为应用程序的每个特性/功能定义访问点;在 Django 中,您可以通过为应用程序创建 url 来实现这一点。 URL 模式映射到特定视图。

在 Django 中,您可以在项目 urls.py 脚本中定义项目的所有 url,但最佳实践是为项目中的各个应用程序创建单独的 urls.py 脚本。

1.在博客应用程序目录中创建一个 urls.py 脚本。

2.从django中的urls包中导入path函数。 path 函数接受三个参数:route、view、kwargs 和 name,并返回一个元素。您可以在这里阅读有关此功能的更多信息。

来自 django.urls 导入路径

3.导入应用程序的视图

来自 .导入视图

4.创建一个名为 urlpatterns 的列表,定义主页的 url,该列表与项目 urlpatterns 中的列表类似。

urlpatterns = [ 路径('',views.home,name='home_page' ]

5.更新项目的url。为了使您的应用程序可访问,您需要更新主项目 urls.py 。打开项目的 urls.py 文件并从 urls 包中导入 include 函数并更新 urlpatterns 列表。

 from django.contrib import admin
 from django.urls import path, include

 urlpatterns = [
     path('admin/', admin.site.urls),
    path('', include('blog.urls')),
   ]
登录后复制

6.之后保存所有文件并使用常用命令启动开发服务器

python manage.py runserver

在浏览器中打开 url,默认的 django 主页会更改 home 函数的响应。

A Beginner’s Guide to Django Web Framework: Creating Apps, Views, Configuring URLs and Templates

将模板添加到您的应用程序

在上一节中,主视图中的休息返回包含 HTML 标头标记的 http 响应。如果我们想要返回包含大量 HTML 标签的整个页面,我们该怎么办?这就是 Django 中的模板的用武之地。Django 模板允许您定义将在用户浏览器中显示的 HTML 结构。模板允许您使用 Django 模板语言 (DTL) 生成动态内容。在 Django 中,您可以将模板放在应用程序中或应用程序的根目录中(有关 django 模板的更多详细信息,请参阅我即将发表的文章)。

1.创建模板目录:在您的博客应用程序中创建模板目录。在模板目录中创建另一个名为 blog 的目录。
2.创建模板。创建名为
的 HTML 文件

myproject/
    blog/
        templates/
            blog/
                index.html 
登录后复制

3.使用以下代码更新index.html文件:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Blog App</title>
</head>
<body>
 <h1>Welcome to the Home page</h1>
 <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Voluptas maiores, modi facilis veritatis amet eum labore odio sit nemo eius?</p>
  </body>
</html>
登录后复制

4.更新主视图:打开视图文件并从快捷方式导入渲染。更新函数体以使用 render 函数返回 index.html。

from django.shortcuts import render
def home(request):
   return render(request, 'blog/index.html')
登录后复制

保存更改并重新加载浏览器。

A Beginner’s Guide to Django Web Framework: Creating Apps, Views, Configuring URLs and Templates

结论

本周的 Kodecapsule 已经结束了。在本文中,我们研究了如何在 django 中创建您的第一个应用程序、在 django 中创建视图、配置 url 和渲染模板。在下一篇文章中,我们将详细介绍模型和模板。

请务必留意本系列中的文章,因为我将带您从零到 Django 专家。
随时欢迎您的建议和意见。
库塞·韦沃利亚莫

参考

https://docs.djangoproject.com/en/5.0/topics/http/views/
https://docs.djangoproject.com/en/5.0/topics/templates/
https://docs.djangoproject.com/en/5.0/ref/urls/#include
https://docs.djangoproject.com/en/5.0/ref/urls/#path
https://www.w3schools.com/django/django_create_app.php

以上是Django Web 框架初学者指南:创建应用程序、视图、配置 URL 和模板的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1675
14
CakePHP 教程
1429
52
Laravel 教程
1333
25
PHP教程
1278
29
C# 教程
1257
24
Python与C:学习曲线和易用性 Python与C:学习曲线和易用性 Apr 19, 2025 am 12:20 AM

Python更易学且易用,C 则更强大但复杂。1.Python语法简洁,适合初学者,动态类型和自动内存管理使其易用,但可能导致运行时错误。2.C 提供低级控制和高级特性,适合高性能应用,但学习门槛高,需手动管理内存和类型安全。

学习Python:2小时的每日学习是否足够? 学习Python:2小时的每日学习是否足够? Apr 18, 2025 am 12:22 AM

每天学习Python两个小时是否足够?这取决于你的目标和学习方法。1)制定清晰的学习计划,2)选择合适的学习资源和方法,3)动手实践和复习巩固,可以在这段时间内逐步掌握Python的基本知识和高级功能。

Python vs.C:探索性能和效率 Python vs.C:探索性能和效率 Apr 18, 2025 am 12:20 AM

Python在开发效率上优于C ,但C 在执行性能上更高。1.Python的简洁语法和丰富库提高开发效率。2.C 的编译型特性和硬件控制提升执行性能。选择时需根据项目需求权衡开发速度与执行效率。

Python vs. C:了解关键差异 Python vs. C:了解关键差异 Apr 21, 2025 am 12:18 AM

Python和C 各有优势,选择应基于项目需求。1)Python适合快速开发和数据处理,因其简洁语法和动态类型。2)C 适用于高性能和系统编程,因其静态类型和手动内存管理。

Python标准库的哪一部分是:列表或数组? Python标准库的哪一部分是:列表或数组? Apr 27, 2025 am 12:03 AM

pythonlistsarepartofthestAndArdLibrary,herilearRaysarenot.listsarebuilt-In,多功能,和Rused ForStoringCollections,而EasaraySaraySaraySaraysaraySaraySaraysaraySaraysarrayModuleandleandleandlesscommonlyusedDduetolimitedFunctionalityFunctionalityFunctionality。

Python:自动化,脚本和任务管理 Python:自动化,脚本和任务管理 Apr 16, 2025 am 12:14 AM

Python在自动化、脚本编写和任务管理中表现出色。1)自动化:通过标准库如os、shutil实现文件备份。2)脚本编写:使用psutil库监控系统资源。3)任务管理:利用schedule库调度任务。Python的易用性和丰富库支持使其在这些领域中成为首选工具。

科学计算的Python:详细的外观 科学计算的Python:详细的外观 Apr 19, 2025 am 12:15 AM

Python在科学计算中的应用包括数据分析、机器学习、数值模拟和可视化。1.Numpy提供高效的多维数组和数学函数。2.SciPy扩展Numpy功能,提供优化和线性代数工具。3.Pandas用于数据处理和分析。4.Matplotlib用于生成各种图表和可视化结果。

Web开发的Python:关键应用程序 Web开发的Python:关键应用程序 Apr 18, 2025 am 12:20 AM

Python在Web开发中的关键应用包括使用Django和Flask框架、API开发、数据分析与可视化、机器学习与AI、以及性能优化。1.Django和Flask框架:Django适合快速开发复杂应用,Flask适用于小型或高度自定义项目。2.API开发:使用Flask或DjangoRESTFramework构建RESTfulAPI。3.数据分析与可视化:利用Python处理数据并通过Web界面展示。4.机器学习与AI:Python用于构建智能Web应用。5.性能优化:通过异步编程、缓存和代码优

See all articles