在Django视图中,您可以访问request.GET['variablename'],因此在您的视图中,您可以执行以下操作:

myvar = request.GET['myvar']

实际的request.GET['myvar']对象类型为:

<class 'django.http.QueryDict'>

现在,如果要传递具有相同参数名称的多个变量,即:

http://example.com/blah/?myvar=123&myvar=567

您希望为参数myvar返回python list,然后执行以下操作:

for var in request.GET['myvar']:
    print(var)

但是,当您try 只获得在url中传递的最后一个值时,即在上面的示例中,您将获得567,而shell中的结果将是:

5
6
7

然而,当你打印request.GET的时候,它似乎有一个list,即:

<QueryDict: {u'myvar': [u'123', u'567']}>

Ok更新:

来自django docs:

QueryDict.getitem(键) 退货 给定键的值.如果 密钥具有多个值, getitem()返回最后一个值.加薪 django.utils.datastructures.MultiValueDictKeyError 如果密钥不存在.(这是一个 Python标准的子类 KeyError,所以您可以坚持捕捉 键错误

getlist(Key)返回 具有请求的密钥的数据,作为 Python列表.如果出现以下情况,则返回空列表 密钥不存在.这是有保证的 返回某种类型的列表.

更新:

推荐答案

您需要GET对象的getlist()函数:

request.GET.getlist('myvar')

Django相关问答推荐

Django项目陷入登录页面

Django中的设计用户类

Django模型ManyToManyField.Add不起作用

如何从Django';S模型中的方法中检索值?

如何在两个字段上查找 django 模型的副本?

反向 url django 管理员

dj_rest_auth 中的 PyTest 警告- RemovedInDjango40Warning: django.conf.urls.url() 已弃用,取而代之的是 django.urls.re_path()

如何使用具有某些权限的 Django 组的转储数据和加载数据?

Django 关系嵌套related_name

关于Django中批量保存对象的问题

Django 模型命名约定

什么时候在 django rest 框架序列化程序中调用创建和更新?

Django JSONField 过滤

django - pisa:将图像添加到 PDF 输出

如何验证对象是否存在于多线程中

Django:显示在每个页面上加载页面所花费的时间

整数的Python正则表达式?

如何使用查询参数构造 Django 反向/url?

模型表格Save保存,Get获取保存的对象

Django:AppRegistryNotReady()