gpt4 book ai didi

python - 在 django 上, request.GET ["paramName"] 在 ajax 请求上返回列表

转载 作者:太空宇宙 更新时间:2023-11-03 19:08:48 26 4
gpt4 key购买 nike

这是我的 JavaScript 代码:

expr = "A simple string"
$.ajax({
type: "GET",
url: "/ajaxrequest/get_dt_paragraphs?expr=" + expr,
timeout: 8000,
success: function(data) { doSomething(); }
});

在我的django View 中,我写了这个方法:

def get_dt_paragraphs(request):
if request.method == 'GET':
my_string = request.GET["expr"]
# print on the console for debugging purposes.
print my_string
# Do other stuff

控制台的输出是[u"A simple string"],所以我发现参数名返回的是一个数组。当然,我可以写 request.GET["expr"][0] 来获取字符串,但我想知道为什么我得到一个列表而不是字符串,以及如何避免这种情况以写得更好、更优雅代码。

最佳答案

GET 和 POST 对象属于 QueryDict 类,该类旨在处理每个键的多个值 ( docs )。

如果您确定需要一个值,我建议您

request.GET.get('expr', [])[:1]

如果“expr”不可用,这将返回到空数组,但这应该是惯用的 Python,因为 [] 的 bool 值为 False。

关于python - 在 django 上, request.GET ["paramName"] 在 ajax 请求上返回列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13743324/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com