这是我在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返回非字符串或字符串到字符比较导致这或我设置错误或什么。
感谢您对此进行调查。
答案 0 :(得分:0)
我不确定为什么要连接字符串并重新分配变量。尝试简化它:
dir = request.GET.get('dir', None)
if dir == "U":
...
elif dir =="D":
...
如果仍然无效,请尝试打印request.GET
字典以查看是否确实传递了dir
个参数(应该有)