視圖函數的應用

1.實現將當前日期和時間編碼為HTML文檔并返回的簡單視圖函數

文章目錄

  • 1.實現將當前日期和時間編碼為HTML文檔并返回的簡單視圖函數
    • 1.1打開visualcode 按圖示點擊 創建新的終端
    • 1.2然后定義ViewDjango項目根目錄下的路由文件urls.py,實現到SimpleView應用的路由路徑
    • 1.3創建SimpleDjango應用目錄中的urls.py
      • 1.1 首先選中SimpleDjango 然后右鍵 選擇new file
      • 1.2命名新建的file為urls.py即可
    • 1.4接下來,定義SimpleDjango應用目錄中的路由文件urls.py
    • 1.5最后,定義SimpleDjango應用中的視圖函數文件views.py
    • 1.6測試視圖
    • 1.7 在瀏覽器輸入兩個網址 進行驗證 效果如下
  • 2.返回錯誤視圖
    • 2.1將返回錯誤視圖函數應用的名稱定義為“ErrorView
    • 2.2然后,重新定義ViewDjango項目根目錄下的路由文件urls.py,實現到ErrorView應用的路由路徑
    • 2.3接下來,定義ErrorView應用目錄中的路由文件urls.py
    • 2.4最后,定義ErrorView應用中的視圖函數views.py
    • 2.5驗證效果 輸入以下網址進行驗證

1.1打開visualcode 按圖示點擊 創建新的終端

在這里插入圖片描述
點擊終端 并切換到python目錄下 輸入以下命令

 cd E:/python/E:\python> django-admin startproject ViewDjangoE:\python> cd ViewDjango   E:\python\ViewDjango> django-admin startapp SimpleViewViewDjango為項目根目錄,SimpleView為具體的應用目錄。

1.2然后定義ViewDjango項目根目錄下的路由文件urls.py,實現到SimpleView應用的路由路徑

找到此路徑【ViewDjango\ViewDjango\urls.py】輸入以下命令

from django.contrib import admin
from django.urls import include, path# define URLconf			
urlpatterns = [					# 定義ViewDjango項目應用的根URLconf模塊path('simple/', include('SimpleView.urls')),	# 通過path()函數定義一個路由路徑'simple/',對應通過include方式包括的SimpleView應用的URLconf模塊'SimpleView.py'path('admin/', admin.site.urls),
]輸入完ctrl+s 保存

1.3創建SimpleDjango應用目錄中的urls.py

1.1 首先選中SimpleDjango 然后右鍵 選擇new file

在這里插入圖片描述

1.2命名新建的file為urls.py即可

我這里已經創建過urls.py 不能創建同一名字的文件
在這里插入圖片描述

1.4接下來,定義SimpleDjango應用目錄中的路由文件urls.py

找到【ViewDjango\SimpleView\urls.py】并輸入以下命令

#---   SimpleView urls.py   ---#from django.urls import include, path
from . import views# define URLconf
urlpatterns = [		# 定義了應用的URLconf模塊path("", views.index, name='index'),	# 通過path函數將應用的默認路徑解析為視圖函數views.indexpath("curdatetime/", views.current_datetime),	# 通過path函數將路徑curdatetime解析為視圖函數
]輸入完crtl+s 保存

1.5最后,定義SimpleDjango應用中的視圖函數文件views.py

找到此路徑【ViewDjango\SimpleView\view.py】并輸入以下命令

#---   SimpleView views.py   ---#from django.http import HttpResponse
from django.shortcuts import render# Create your default views.def index(request):	# 定義默認視圖函數views.indexreturn HttpResponse("Hello, SimpleView App!")	# 返回對象文本# Create your datetime views.import datetime	# 導入日期和時間類型對象datetimedef current_datetime(request):now = datetime.datetime.now()	# 通過時間日期調用now()方法,獲取當前時間html = "<html><body>It is now %s.</body></html>" % now	# 定義html,并傳遞當前時間到頁面代碼中return HttpResponse(html)	# 返回頁面代碼輸入完crtl+s 保存

1.6測試視圖

在終端輸入以下命令 路徑保持一致

PS E:\python\ViewDjango> python manage.py runserver

1.7 在瀏覽器輸入兩個網址 進行驗證 效果如下

 (http://localhost:8000/simple/)
(http://localhost:8000/simple/curdatetime/)

在這里插入圖片描述

在這里插入圖片描述

2.返回錯誤視圖

  • 這里我們通過HttpResponseNotFound子類設計一個返回錯誤視圖的應用,用來模擬返回404錯誤狀態。

2.1將返回錯誤視圖函數應用的名稱定義為“ErrorView

打開終端創建錯誤視圖應用 路徑保持一致 在ViewDjango下創建

PS E:\python\ViewDjango> django-admin.exe startapp ErrorView

2.2然后,重新定義ViewDjango項目根目錄下的路由文件urls.py,實現到ErrorView應用的路由路徑

在此路徑【ViewDjango\ViewDjango\urls.py】輸入以下命令并保存

from django.contrib import admin
from django.urls import include, path# define URLconf
urlpatterns = [path('simple/', include('SimpleView.urls')),path('error/', include('ErrorView.urls')),	# 通過函數新增路由路徑,通過include包括應用的URLconf模塊path('admin/', admin.site.urls),
]

2.3接下來,定義ErrorView應用目錄中的路由文件urls.py

在此路徑【ViewDjango\ErrorView\urls.py】輸入以下命令 并保存

#---   ErrorView urls.py   ---#from django.urls import include, path
from . import views# define URLConf
urlpatterns = [path("", views.index, name='index'),	# 通過path函數將應用默認路徑解析為視圖函數path("pagenotfound/<int:p>/", views.error_view),# 通過path函數將路徑解析為視圖函數,添加一個路由參數,p用于選擇不同的視圖返回值
]

2.4最后,定義ErrorView應用中的視圖函數views.py

在此路徑【ViewDjango\ErrorView\views.py】輸入以下命令 并保存

#---   ErrorView views.py   ---#from django.http import HttpResponse, HttpResponseNotFound
from django.shortcuts import render# import logging
import logging
# get logger
logger = logging.getLogger('log')# Create your views here.# default view
def index(request):		# 定義默認視圖函數return HttpResponse("Hello, ErrorView App!")# error view
def error_view(request, p):		# 定義錯誤視圖函數print("p =", p)if p:return HttpResponse("Page not found!")else:return HttpResponseNotFound("HttpResponseNotFound --- Page not found!")

2.5驗證效果 輸入以下網址進行驗證

(http://localhost:8000/error/)
(http://localhost:8000/error/pagenotfound/1/)
(http://localhost:8000/error/pagenotfound/0/)

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/74848.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/74848.shtml
英文地址,請注明出處:http://en.pswp.cn/web/74848.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解鎖 C 語言安全新姿勢:C11 安全函數全解析

一、開篇:C 語言安全的新護盾 在 C 語言的編程世界里,緩沖區溢出等安全問題猶如潛藏的暗礁,時刻威脅著程序的穩定與安全。為了有效應對這些挑戰,C11 標準引入了一系列安全函數,也被稱為 “Annex K” 標準庫函數。這些函數為字符串和內存操作函數注入了新的活力,通過增加…

BGP路由協議之屬性2

Orgin 起源 公認必遵屬性 起源名稱標記描述IGPi如果路由是由始發的 BGP 路由器使用 network 命令注入到 BGP 的&#xff0c;那么該 BGP 路由的 origin 屬性為 IGPEGPe如果路由是通過 EGP 學習到的&#xff0c;那么該 BGP 路由的 Origin 屬性為 EGPIncomplete?如果路由是通過…

C#實現HiveQL建表語句中特殊數據類型的包裹

用C#實現搜索字符串中用’(‘和’)‘包裹的最外層的里面里面的字符串&#xff0c;將里面的記錄按一個或多個空格、換行或tab&#xff0c;或者是它的在一起的組合作為分隔&#xff0c;分隔出多個字符串組&#xff0c;如果組中有字符串中同時包含’<‘和’>’&#xff0c;則…

腦電學習筆記

一&#xff0c;原理簡介 使用eprime或者matlab給被試呈現刺激&#xff0c;并在某個時間發送Mark&#xff0c;腦電帽會同步采集被試的腦電信號&#xff0c;經放大器放大后&#xff0c;控制盒會把腦電信號和mark 信號同步到一起&#xff0c;通過usb線傳入到采集系統&#xff08;比…

宏碁筆記本電腦擎7PRO搭載的 NVIDIA RTX 5080 顯卡安裝pytorch

宏碁筆記本電腦擎7PRO搭載的 NVIDIA RTX 5080 顯卡是一款高性能移動 GPU&#xff0c;基于 NVIDIA 最新的 Blackwell 架構設計&#xff0c;通過修正架構&#xff08;Blackwell&#xff09;、顯存類型與帶寬&#xff08;GDDR7、960GB/s&#xff09;、Tensor Core 與 RT Core 全面…

ES6中增強對象

在 ES6 中&#xff0c;對象的使用變得更加方便了&#xff0c;可以在定義對象時通過屬性簡寫、遍歷作為屬性名或省略對象函數屬性的書寫等方式來提高編碼的效率&#xff1a; 其實就這么簡單&#xff0c;大家可以好好看下上面的代碼&#xff0c;有問題歡迎留言一起探討&#xff0…

XSLFO XSLT:深入解析兩種強大的XML轉換技術

XSLFO & XSLT:深入解析兩種強大的XML轉換技術 引言 在XML(可擴展標記語言)的生態系統中,XSLFO(可擴展樣式表語言格式化對象)和XSLT(可擴展樣式表轉換語言)是兩種非常強大的技術。它們分別負責將XML文檔轉換為其他格式以及進行XML文檔的轉換。本文將深入探討這兩種…

Django4.0的快速查詢以及分頁

1. filter 方法 filter 是 Django ORM 中最常用的查詢方法之一。它用來根據給定的條件過濾查詢集并返回滿足條件的對象。 articles Article.objects.all() # 使用 SearchFilter 進行搜索 search_param request.query_params.get(search, None) author_id request.query_pa…

在Vue3中格式化后端返回的Java Date類型數據為指定格式

在前端Vue3項目中&#xff0c;格式化后端返回的java.util.Date類型時間到yyyy-MM-dd HH:mm:ss格式&#xff0c;有幾種常用方法&#xff1a; 方法一&#xff1a;使用JavaScript內置方法 <JAVASCRIPT> // 假設后端返回的數據結構為 { createTime: 2023-05-15T08:30:00.0…

單元測試原則之——不要模擬不屬于你的類型

在單元測試中,不要模擬不屬于你的類型(Don’t mock types you don’t own)是一個重要的原則。這是因為外部庫或框架的類型(如第三方依賴)可能會在未來的版本中發生變化,而你的模擬可能無法反映這些變化,從而導致測試失效。 以下是一個基于Java Mockito 的示例,展示如何…

內網滲透(雜項集合) --- 中的多協議與漏洞利用技術(雜項知識點 重點) 持續更新

目錄 1. NetBIOS 名稱的網絡協議在局域網中內網滲透中起到什么作用 2. 使用 UDP 端口耗盡技術強制所有 DNS 查找失敗&#xff0c;這個技術如何應用在局域網內網滲透測試中 3. 在本地創建一個 HTTP 服務來偽造 WPAD 服務器 什么是 WPAD 服務器&#xff1f;這個服務器是干嘛的…

Git相關筆記1 - 本地文件上傳遠程倉庫

Git相關筆記 目錄 Git相關筆記Git上傳相關文件第一步創建一個倉庫&#xff1a;第二步本地創建空文件夾&#xff1a;第三步開始在gitbush上傳文件&#xff1a;解決外網網絡連接的問題&#xff1a;中文文件的編碼問題&#xff1a;參考資料 Git上傳相關文件 第一步創建一個倉庫&a…

Cocos Creator 進行 Web 發布后,目錄結構解析

在使用 Cocos Creator 進行 Web 發布后&#xff0c;生成的目錄結構通常包含以下內容&#xff0c;下面為你詳細介紹&#xff1a; 1. index.html 這是 Web 項目的入口 HTML 文件&#xff0c;它會加載所需的 JavaScript 文件和資源&#xff0c;從而啟動游戲或應用程序。示例代碼…

C++20的協程簡介

C20 引入了協程&#xff08;Coroutines&#xff09;&#xff0c;這是一種特殊的函數&#xff0c;它可以暫停執行并在之后恢復&#xff0c;而不是像普通函數那樣一旦返回就終止。協程的主要特點在于它能保留自身的執行狀態&#xff0c;這讓異步編程更加簡潔和直觀。以下是對 C20…

通過ansible+docker-compose快速安裝一主兩從redis+三sentinel

目錄 示例主機列表 架構參考 文件內容 安裝腳本 ansible變量&#xff0c;需修改 ansible配置文件和主機清單&#xff0c;需修改 運行方式 驗證故障轉移master 涉及redis鏡像和完整的腳本文件 示例主機列表 架構參考 文件內容 安裝腳本 #!/bin/bashset -e export pa…

Apache Arrow 使用

下述操作參考 Building Arrow C — Apache Arrow v20.0.0.dev267 安裝依賴組件 sudo apt-get install \build-essential \ninja-build \cmake 下載源碼 git clone --recursive --shallow-submodules gitgithub.com:apache/arrow.git 配置 創建build目錄并且進入 mkdir a…

玩轉大語言模型——使用華為官方MindIE-Server鏡像方式部署DeepSeek模型

系列文章目錄 玩轉大語言模型——使用langchain和Ollama本地部署大語言模型 玩轉大語言模型——三分鐘教你用langchain提示詞工程獲得貓娘女友 玩轉大語言模型——ollama導入huggingface下載的模型 玩轉大語言模型——langchain調用ollama視覺多模態語言模型 玩轉大語言模型—…

MCP項目開發-一個簡單的RAG示例

MCP項目開發-一個簡單的RAG示例 前言 前言 客戶端是基于官網的例子改的&#xff0c;模型改成了openai庫連接僅僅使用基礎的RAG流程作為一個演示&#xff0c;包含了以下步驟 query改寫搜索&#xff1a;使用google serper重排序&#xff1a;使用硅基流動的api 大模型api也使用…

Tire樹(字典樹)

理論 上圖是一棵Trie樹&#xff0c;表示了關鍵字集合{“a”, “to”, “tea”, “ted”, “ten”, “i”, “in”, “inn”} 。從上圖可以歸納出Trie樹的基本性質&#xff1a; 根節點不包含字符&#xff0c;除根節點外的每一個子節點都包含一個字符。從根節點到某一個節點&…

厄瓜多爾主流收單方式:Pago Efectivo支付

PAGOEFECTIVO&#xff08;Pago Efectivo&#xff09;是秘魯主流的在線支付方式&#xff0c;由El Comercio Group開發&#xff0c;主要為用戶提供安全、便捷的在線支付解決方案&#xff0c;支持網銀和現金支付&#xff0c;適用于沒有信用卡或不愿透露銀行信息的消費者。 Pago Ef…