嘿,我正在进入django,这让我很头疼。 我想获得一个简单的GET变量。网址是site.com/search/?q=search-term如何检查request.GET var是否?
我的看法是:
def search(request):
if request.method == 'GET' and 'q' in request.GET:
q = request.GET.get('q', None)
if q is not None:
results = Task.objects.filter(
Q(title__contains=q)
|
Q(description__contains=q),
)
...return...
else:
...
else:
...
搜索查询:mysite.com/search/? (没有q)如果正确的话,通过第一个。
的问题是在像mysite.com/search/?q=查询。他们不要被抓到如果q是不无:
所以,简单的答案会是怎样查询q ==“”? (我已经尝试了'',None等等,但无济于事。)
一个简单的**如果q **而不是**,如果q不是无(或'')**的窍门。任何人都有这样的解释? – Nacho 2010-03-11 02:09:12
一般来说,在Python中使用'is'运算符时需要非常谨慎。通常你想要一个相等测试('=='),而不是一个身份测试('is')。一系列非零长度测试“真”。 – 2010-03-11 02:23:44