【django学习】request.POST与request.POST.get两者主要区别
生活随笔
收集整理的這篇文章主要介紹了
【django学习】request.POST与request.POST.get两者主要区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
request.POST是用來接收前端傳過來的數據
?
一、request.POST.get('sth')與?request.POST ['sth'] - 區別
request.POST['sth']KeyError如果'sth'不在,將提出異常request.POST。
request.POST.get('sth')將返回None如果'sth'不在request.POST。
此外,.get允許您提供默認值的附加參數,如果該鍵不在字典中,則返回該參數。
例如,request.POST.get('sth', 'mydefaultvalue')
這是任何python字典的行為,并不是特定的request.POST。
?
二、這兩個片段在功能上是相同的:
第一個片段:
try:x = request.POST['sth'] except KeyError:x = -1 第二個片段: x = request.POST.get('sth', -1)如果數值不存在的話,我們可以指定顯示的默認值:
x = request.POST.get('sth', 'default_value')
這里我們可以拿字典對象來進行理解:
三:正常字典訪問和使用.get()訪問它的主要區別:
使用類似request.POST['sth']意愿的東西?會出現一個關鍵錯誤,如果不存在''sth'。但是使用get()方法字典也會為您提供更好的錯誤處理
request.POST.get('sth')將返回沒有鍵是'sth不存在',并且通過給第二個參數get()將返回它作為默認值。
data = request.POST.get('sth','my_default_value')如果'sth'鍵不存在,則數據中的值將為my_default_value。這是使用get()方法優于普通字典訪問的優勢。
參考:https://stackoverflow.com/questions/12518517/request-post-getsth-vs-request-poststh-difference
總結
以上是生活随笔為你收集整理的【django学习】request.POST与request.POST.get两者主要区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 排序:冒泡排序与选择排序
- 下一篇: oracle将字段nullable设为Y