Могу ли я получить значения из параметров "GET" в виде массива?
Я могу получить данные из url следующим образом.
http://127.0.0.1:8000/page/?key=003
Я показываю вывод в формате Json. Это view.py
def page(request):
key = request.GET['key']
data=Device.objects.get(key=key)
print(key)
data = {
"open": data.open,
"close": data.close,
}
return JsonResponse(data, safe=False)
Я пытаюсь получить много значений в одно и то же время, как это
http://127.0.0.1:8000/page/?key=003&key=004
В терминале выводится вот такой результат.
[22/Mar/2022 15:19:22] "GET /page/?key=003&key004 HTTP/1.1" 200 64
003
Вывод показывает только 003. Могу ли я получить значения из параметров "GET" в виде массива?
Вы не можете иметь более одного параметра с одним и тем же ключом, Вы должны попробовать http://127.0.0.1:8000/page/?key=003,004, а затем разобрать значение, возвращаемое key = request.GET['key'], разделив его символом ','
Да, вы можете иметь более одного параметра с одним и тем же ключом. Просто сделайте следующее:
key = request.GET.getlist('key')
И вы получите массив с ключевыми значениями.