Reputation: 644
I read http://www.django-rest-framework.org/api-guide/filtering/#filtering-against-the-url
My views.py :
class QList(generics.ListAPIView):
serializer_class = PostSerializer
def get_queryset(self) :
lon = self.request.query_params.get('user_lon', '13')
lat = self.request.query_params.get('user_lat', '15')
# --- other following codes deleted to read easily
My urls.py :
urlpatterns = [
url('^QList/(?P<user_lon>.+)&(?P<user_lat>.+)/$', QList.as_view()),
]
I want use more than 2 parameter on Class QList / def get_queryset.
like using http://127.0.0.1:8000/api/QList?user_lon=13&user_lat=15
but i don't know how to make urls.py
How can i treat more than 2 parameters in django rest framework?
Traceback :
Request Method: GET
Request URL: http://127.0.0.1:8000/api/QList?user_lon=13&user_lat=15
Django Version: 1.8
Python Version: 3.5.2
Installed Applications:
[#deleted otehrs
'django.contrib.sites',
'bolg',
'rest_framework',
]
Installed Middleware:
Traceback:
# deleted others
16. url('^QList/(?P<user_lon>.+)&(?P<user_lat>.+)/$', QList.as_view()),
Exception Type: NameError at /api/QList
Exception Value: name 'QList' is not defined
Upvotes: 1
Views: 106
Reputation: 2080
You don't have to edit urls.py.
views.py
lon = self.request.GET.get('user_lon', '')
lat = self.request.GET.get('user_lat', '')
And add ?user_lon=13&user_lat=15
end of the GET method url.
Upvotes: 1