这是我的获取方法:
if request.method == 'GET':
myObject = myObjectClass.objects.all()
serializer = myObjectSerializer(myObject, many=True)
return Response(serializer.data)
让我们假设响应以这种方式看待:
[
{
"id": 1,
"data1": 12,
"data2": "example1"
},
{
"id": 2,
"data1": 11,
"data2": "example3"
},
{
"id": 3,
"data1": 12,
"data2": "example3"
}
]
我想使用网址http://localhost:8000/data/?data1=12创建方法以获得响应:
[
{
"id": 1,
"data1": 12,
"data2": "example1"
},
{
"id": 3,
"data1": 12,
"data2": "example3"
}
]
我的问题是我想创建独特的方法。例如,我们可以使用网址http://localhost:8000/data/?data2="example3",作为回应我们会得到:
[
{
"id": 2,
"data1": 11,
"data2": "example3"
},
{
"id": 3,
"data1": 12,
"data2": "example3"
}
]
我想知道这是否可行?什么是最好的解决方案?我一直在尝试request.GET,request.GET.get()等,但没有任何作用。提前谢谢。
答案 0 :(得分:0)
request.GET.get()
应该适用于检索您要发送的查询参数。以下内容:
if request.GET.get('data1'):
print request.GET.get('data1')
if request.GET.get('data2'):
print request.GET.get('data2')
或者,您可以使用正则表达式使用动态网址格式。