如何将查询参数添加到

我想从一个页面重定向到另一页面(并保存查询参数)。因此,我重定向就像

base.html
<tr>
<td> <a href="search/"></a></td>
<td>...</td>
</tr>
urls.py
 path('main/search/', views.x, name='table_query')
views.py
@login_required
@inject_session_params
def table_structure(request, user_data, *args, **kwargs):
    if request.method=='GET':
        user_data['table']=kwargs['table']
        user_data['structure'] = getTableProps(kwargs['table'])
    else:
        return redirect('login')
    return render(request, 'x.html', user_data)

我已经获得了我想用于查询的所有所需信息,但我不确定如何在 中使用它。

我尝试创建另一个函数,它会生成 url 然后重定向到所需的视图,但它给了我一个错误。这就是我尝试过的:

base_url=reverse('table_query')
query = urlencode({'x': x, 'y': y, 'z': z})
url='{}?{}'.format(base_url,query)

如何在标签内添加查询参数(带有函数),无需编写

I want to redirect from one page to another (and save the query parameters). So i redirect like

base.html
<tr>
<td> <a href="search/"></a></td>
<td>...</td>
</tr>
urls.py
 path('main/search/', views.x, name='table_query')
views.py
@login_required
@inject_session_params
def table_structure(request, user_data, *args, **kwargs):
    if request.method=='GET':
        user_data['table']=kwargs['table']
        user_data['structure'] = getTableProps(kwargs['table'])
    else:
        return redirect('login')
    return render(request, 'x.html', user_data)

I have got al the needed information which I would like to use for the query, but I am not sure how to use it inside <a>.

I have tried to create another function, which would generate the url and then redirect to the needed view, but it gives me an error. This is what I have tried:

base_url=reverse('table_query')
query = urlencode({'x': x, 'y': y, 'z': z})
url='{}?{}'.format(base_url,query)

How to add query parameters (with a function) inside a tag, without writing <a href="search?x=x&y=y&z=z"?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

零崎曲识 2025-01-26 02:37:05

您可以在响应上下文中添加它:

# views.py
@login_required
@inject_session_params
def table_structure(request, user_data, *args, **kwargs):
    if request.method=='GET':
        user_data['table']=kwargs['table']
        user_data['structure'] = getTableProps(kwargs['table'])
        user_data['query'] = urlencode({'x': x, 'y': y, 'z': z})
    else:
        return redirect('login')
    return render(request, 'x.html', user_data)

然后在模板中 x.html

<tr><td> 
<a href="{% url 'table_query' %}?{{ query }}"></a>

</td></tr>

You can add it in the response context:

# views.py
@login_required
@inject_session_params
def table_structure(request, user_data, *args, **kwargs):
    if request.method=='GET':
        user_data['table']=kwargs['table']
        user_data['structure'] = getTableProps(kwargs['table'])
        user_data['query'] = urlencode({'x': x, 'y': y, 'z': z})
    else:
        return redirect('login')
    return render(request, 'x.html', user_data)

and then in template x.html:

<tr><td> 
<a href="{% url 'table_query' %}?{{ query }}"></a>

</td></tr>
初与友歌 2025-01-26 02:37:05

最后,这就是我解决了一个问题:

<a href="{% url 'abc' %}?x={{ x}}&y={{ y}}&z={{ z}}"></a>

In the end this is how I have solved the question:

<a href="{% url 'abc' %}?x={{ x}}&y={{ y}}&z={{ z}}"></a>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文