Python 什么是';q';在request.GET变量中?

Python 什么是';q';在request.GET变量中?,python,django,Python,Django,关于这个问题: 我在view.py中有此函数: def search(request): error = False if 'q' in request.GET: q = request.GET['q'] if not q: error = True else: ..... 它需要一个字符串并搜索它。。。。我不理解'q'部分 我假设它是查询的URL模式的一部分:/search/?q=..

关于这个问题:

我在view.py中有此函数:

def search(request):
    error = False
    if 'q' in request.GET:
        q = request.GET['q']
        if not q:
            error = True
        else:
          .....
它需要一个字符串并搜索它。。。。我不理解
'q'
部分

我假设它是查询的URL模式的一部分:
/search/?q=..
但我不知道我在哪里建立了这个精确的模式


为什么它必须是
'q'
?它是什么意思?

它是url中给定的参数:

...com/?q=variable
因此,在视图中,您有一个dict
请求。GET
q
是键,
变量
是值:

{'q': 'variable'}
如果您想在url中更改它,如下所示:

...com/?b=...
您需要在视图中进行更改:

def search(request):
    error = False
    if 'b' in request.GET:
        b = request.GET['b']
        if not b:
            error = True
        else:
          .....

如您所见,只需将
q
替换为
b
或任何您想要作为参数名称的内容。

这是一个参数,让我们假设myurl.com/?q=myValue,这样您就可以使用HTTP协议通过get获得get值。它可以是?query=?q=?post=等等。。。你只需要确保你的Django应用程序读取这些参数,但不是强制性的。只是为了让我理解。。假设我想将其更改为
/search/?b=…
我需要做哪些更改?我不明白搜索功能和URL之间的连接在哪里。。。。我不明白它是如何创建
/?q=..
的模式的。你需要传递一个搜索词,对吗?假设tomatoe所以你使用/search/?query=tomatoe所以你使用request.GET['query'],那么你就得到了tomatoe的值。我理解。。我只是不明白这个“q”是怎么定义的。