<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
檢視層
一個檢視函數,簡稱檢視,是一個簡單的 Python 函數,它接受 Web 請求並且返回 Web 響應。
響應可以是一個 HTML 頁面、一個 404 錯誤頁面、重定向頁面、XML 檔案、或者一張圖片...
無論檢視本身包含什麼邏輯,都要返回響應。程式碼寫在哪裡都可以,只要在 Python 目錄下面,一般放在專案的 views.py 檔案中。
每個檢視函數都負責返回一個 HttpResponse 物件,物件中包含生成的響應。
檢視層中有兩個重要的物件:請求物件(request)與響應物件(HttpResponse)。
以下介紹幾個常用的 request 屬性。
資料型別是 QueryDict,一個類似於字典的物件,包含 HTTP GET 的所有引數。
有相同的鍵,就把所有的值放到對應的列表裡。
取值格式:物件.方法。
get():返回字串,如果該鍵對應有多個值,取出該鍵的最後一個值。
def runoob(request): name = request.GET.get("name") return HttpResponse('姓名:{}'.format(name))
資料型別是 QueryDict,一個類似於字典的物件,包含 HTTP POST 的所有引數。
常用於 form 表單,form 表單裡的標籤 name 屬性對應引數的鍵,value 屬性對應引數的值。
取值格式: 物件.方法。
get():返回字串,如果該鍵對應有多個值,取出該鍵的最後一個值。
def runoob(request): name = request.POST.get("name") return HttpResponse('姓名:{}'.format(name))
資料型別是二進位制位元組流,是原生請求體裡的引數內容,在 HTTP 中用於 POST,因為 GET 沒有請求體。
在 HTTP 中不常用,而在處理非 HTTP 形式的報文時非常有用,例如:二進位制圖片、XML、Json 等。
def runoob(request): name = request.body print(name) return HttpResponse("菜鳥教學")
獲取 URL 中的路徑部分,資料型別是字串。
def runoob(request): name = request.path print(name) return HttpResponse("菜鳥教學")
獲取當前請求的方式,資料型別是字串,且結果為大寫。
def runoob(request): name = request.method print(name) return HttpResponse("菜鳥教學")
響應物件主要有三種形式:HttpResponse()、render()、redirect()。
HttpResponse(): 返回文字,引數為字串,字串中寫文字內容。如果引數為字串裡含有 html 標籤,也可以渲染。
def runoob(request): # return HttpResponse("菜鳥教學") return HttpResponse("<a href='http://https://www.runoob.com/>菜鳥教學</a>")
render(): 返回文字,第一個引數為 request,第二個引數為字串(頁面名稱),第三個引數為字典(可選引數,向頁面傳遞的引數:鍵為頁面引數名,值為views引數名)。
def runoob(request): name ="菜鳥教學" return render(request,"runoob.html",{"name":name})
redirect():重定向,跳轉新頁面。引數為字串,字串中填寫頁面路徑。一般用於 form 表單提交後,跳轉到新頁面。
def runoob(request): return redirect("/index/")
render 和 redirect 是在 HttpResponse 的基礎上進行了封裝:
到此這篇關於Django框架中檢視用法的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45