djanog,redirect加参数
时间: 2023-08-02 09:09:04 浏览: 20
在 Django 中,可以使用 `redirect` 函数将用户重定向到另一个 URL。如果您想要向重定向的 URL 传递一些参数,可以使用查询字符串。以下是一个例子:
```python
from django.shortcuts import redirect
def my_view(request):
# 处理逻辑...
my_param = 'hello'
return redirect('/my-url/?my_param={}'.format(my_param))
```
在上面的示例中,我们将 `my_param` 参数添加到查询字符串中,并将用户重定向到 `/my-url/` URL。在接收到这个请求的视图中,您可以使用 `request.GET` 属性来获取查询字符串参数。
```python
def my_other_view(request):
my_param = request.GET.get('my_param')
# 处理逻辑...
```
您也可以使用 Django 的 `build_absolute_uri` 函数来构建包含查询字符串的完整 URL,例如:
```python
from django.shortcuts import redirect
from django.urls import reverse
def my_view(request):
# 处理逻辑...
my_param = 'hello'
url = '{}?my_param={}'.format(reverse('my-url'), my_param)
return redirect(request.build_absolute_uri(url))
```
在这个例子中,我们首先使用 `reverse` 函数来获取 `my-url` 的 URL,然后将 `my_param` 添加到查询字符串中。最后,我们使用 `build_absolute_uri` 函数将 URL 转换为完整的绝对 URL,然后将用户重定向到该 URL。