几种数据获取方法的区别

1. 字典值的获取

mydict = {'a': 0}
mydict['a']  #返回0, 正确
mydict['b'] #报错
mydict.get('a')  #返回0, 正确
mydict.get('b')  #返回 None 不会报错

2. 获取request.GET中的参数
这里类似mydict[‘a’]形式

if 'user_name' in request.GET:
    user_name = request.GET['user_name']

当访问的url中没有’user_name=jerry’等类似字段,且为进行判断直接GET即

user_name = request.GET['user_name']

则会抛出如下异常:
Exception Type: MultiValueDictKeyError
Exception Value:
“‘query_time'”

3.request.GET.get()方法
这里类似mydict.get(‘a’)形式

server_id = request.GET.get('server_id')

如果没有’server_id’字段,则server_id为None

可以为该用法加一个默认值

server_id = request.GET.get('server_id', '0')

即如果没有 ‘server_id’ 则 server_id 为 ‘0’

4. django查询数据库用法,Gold.objects.get()

goldLily = Gold.objects.get(name="lily")

如果返回值的数量不为1(即数量多于1个或数量为0),会抛出异常

goldLily = Gold.objects.filter(name="lily")

filter方法是从数据库的取得匹配的结果,返回一个对象列表,如果记录不存在的话,它会返回[]。

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权,转载请注明出处。
文章名称:《几种数据获取方法的区别》
文章来自:泰恩数据
文章链接:https://tyne.cc/119.html
本站资源仅供个人学习使用,请勿用于商业用途。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址