最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django query模塊

 更新時(shí)間:2019年04月20日 10:36:45   作者:二十一  
這篇文章主要介紹了django query模塊,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

最近在接觸一個(gè)Django項(xiàng)目,使用的是fbv( function-base views )模式,看起來(lái)特別不舒服,項(xiàng)目中有一個(gè)模型類117個(gè)字段,看我的有點(diǎn)暈,不過(guò)還是得干呀,生活呀,頭發(fā)呀。

個(gè)人覺(jué)得這個(gè)模塊用處不是很大,并且寫(xiě)的也不是很好??戳丝丛创a如此簡(jiǎn)單,就給大家分享一下,也好久沒(méi)有給大家分享東西了。

import json
def get_default_valcastfunc(val_cast_type=None):
 """通過(guò)一下方法傳入的字符串判斷使用哪種數(shù)據(jù)返回"""
 if val_cast_type == 'int':
  return 0, int
 elif val_cast_type == 'listjson':
  return '[]', json.loads
 elif val_cast_type == 'dictjson':
  return '{}', json.loads
 return None, None
def get_query_value(request, key, default=None, val_cast_func=None, val_cast_type=None):
 """ 通過(guò)val_cast_type獲取到優(yōu)化數(shù)據(jù)的函數(shù),或者通過(guò)val_cast_func函數(shù)傳入val """
 if val_cast_type in ['int', 'listjson', 'dictjson']:
  default, val_cast_func = get_default_valcastfunc(val_cast_type)
 value = request.POST.get(key) or request.GET.get(key) or default
 return val_cast_func(value) if val_cast_func else (value or '')自認(rèn)為的幾個(gè)重點(diǎn)

request.POST.get這樣取值即使key不存在也不會(huì)報(bào)錯(cuò),而是返回None,而request.POST[key]這樣會(huì)報(bào)錯(cuò)KeyError ,GET同POST Django的模型類使用get若無(wú)值,則會(huì)報(bào)錯(cuò)。

在返回的時(shí)候使用參數(shù)val_cast_func,而val_cast_func并未傳入,而是通過(guò)get_default_valcastfunc返回設(shè)置

相關(guān)文章

最新評(píng)論

贺州市| 五原县| 武冈市| 宾川县| 岳西县| 牟定县| 鄂尔多斯市| 阆中市| 康乐县| 手游| 正阳县| 霸州市| 响水县| 吉水县| 凤凰县| 湘潭县| 吴川市| 和林格尔县| 合肥市| 盘山县| 雅江县| 开封县| 霍城县| 井研县| 仙游县| 五峰| 万源市| 临海市| 广河县| 湖州市| 中江县| 清原| 云梦县| 肃南| 富锦市| 荥经县| 凌源市| 中牟县| 始兴县| 特克斯县| 安丘市|