Django-在请求之间保留参数字典
我需要根据一些参数显示一个表,比如每页寄存器或其他标准。如何使用Django模板轻松管理它?我知道GET请求的参数是以查询字符串的形式存在的 我有两个不同的按钮Django-在请求之间保留参数字典,django,Django,我需要根据一些参数显示一个表,比如每页寄存器或其他标准。如何使用Django模板轻松管理它?我知道GET请求的参数是以查询字符串的形式存在的 我有两个不同的按钮 <a href="{% url 'create_company' %}?regs=25"> <a href="{% url 'create_company' %}?status=active"> 我怎样才能让他们表现得像我 <a href="{% url 'create_company' %}<
<a href="{% url 'create_company' %}?regs=25">
<a href="{% url 'create_company' %}?status=active">
我怎样才能让他们表现得像我
<a href="{% url 'create_company' %}<whatever was here before plus>status=active">
因此,如果我单击第一个,接收页面并单击第二个,最终结果将是
<a href="{% url 'create_company' %}?regs=25&status=active">
同样,如果我将regs的组合框从25改为10,它知道必须删除regs=25并添加regs=10
# my_tags.py
@register.tag
def query_string(parser, token):
"""Converts a string into all lowercase"""
tag_name, dic, key, value = token.split_contents()
return QueryStringNode(dic, key, value)
class QueryStringNode(template.Node):
def __init__(self, dic, key, value):
self.dic = template.Variable(dic)
self.key = key
self.value = value
def render(self, context):
try:
actual_dic = self.dic.resolve(context)
actual_dic[self.key] = self.value
return '?' + urllib.parse.urlencode(actual_dic)
except VariableDoesNotExist: # allows no dic at all to blank links
actual_dic = {self.key: self.value}
return '?' + urllib.parse.urlencode(actual_dic)
在模板上
<a href="{% url 'create_company' %}{% query_string params 'test' '1' %}">link</a>
不便之处在于,在每个视图中,我都必须解析所有查询字符串,将它们放回字典中,并以“params”的形式呈现给响应字典。您现在有什么?任何示例代码?@KevinLonde更改了原始问题您可以使用以下代码段:。