Django request.GET []字符串比较失败

时间:2012-02-16 23:15:35

标签: python django

这是我在django中的视图函数中的代码片段 -

    dir = ''
    if (''+request.GET['dir']) == 'U':
      dir = 'U'
      elif (''+request.GET['dir']) == 'D':
      dir = 'D'

但是当我检查是否dir =='D'或dir =='U'时,比较失败。例如。以下代码失败(与'U'比较相同)

    if dir == 'D':
      user_voted.vote = 'D'
      obj.score -= 2
      user_voted.save()
      obj.save()

我觉得dir没有设置为'U'或'D'。我甚至尝试设置dir = request.GET ['dir'],它应该将其设置为'U'或'D',但比较仍然失败。任何人都可以告诉我,如果request.GET返回非字符串或字符串到字符比较导致这或我设置错误或什么。

感谢您对此进行调查。

1 个答案:

答案 0 :(得分:0)

我不确定为什么要连接字符串并重新分配变量。尝试简化它:

dir = request.GET.get('dir', None)
if dir == "U":
    ...
elif dir =="D":
    ...

如果仍然无效,请尝试打印request.GET字典以查看是否确实传递了dir个参数(应该有)