Buraya kendime bir seçenek eklemek istiyorum. Birisi urls.py dosyasında yolun nasıl ayarlanacağını merak eder.
domain/search/?q=CA
böylece sorguyu çağırabiliriz.
Gerçek şu ki, urls.py'de böyle bir rota ayarlamanız gerekli DEĞİLDİR. Ayarlamanız gereken şey sadece urls.py
urlpatterns = [
path('domain/search/', views.CityListView.as_view()),
]
ve http: // sunucuadı: port / domain / search /? q = CA girdiğinizde . '? Q = CA' sorgu kısmı otomatik olarak rezerve edebileceğiniz karma tabloda ayrılacaktır.
request.GET.get('q', None).
İşte bir örnek (views.py)
class CityListView(generics.ListAPIView):
serializer_class = CityNameSerializer
def get_queryset(self):
if self.request.method == 'GET':
queryset = City.objects.all()
state_name = self.request.GET.get('q', None)
if state_name is not None:
queryset = queryset.filter(state__name=state_name)
return queryset
Ayrıca, URL'de sorgu dizesi yazdığınızda
http://servername:port/domain/search/?q=CA
Sorgu dizesini tırnak içine almayın, ör.
http://servername:port/domain/search/?q="CA"