Konstantin18ko
@Konstantin18ko
Стоматолог

Как получить данные DRF через фильтр GET параметры?

Есть три разных GET запроса, как их обработать? под каждый свой обработчик?
site.com/api/stories/?start_day=2018-04-01&exit_day=2018-04-07&depatment=1&doctor=6
site.com/api/stories/?start_day=2018-04-01&exit_day=2018-04-07&depatment=1
site.com/api/stories/?start_day=2018-04-01&exit_day=2018-04-07&doctor=6
  • Вопрос задан
  • 1092 просмотра
Пригласить эксперта
Ответы на вопрос 1
@vasilek-nik
Вы бы хоть как то поподробнее описали...
Если исходить из того, что ответ - одна и та же модель, но с разными фильтрами, то:
Вы можете в view переопределить метод get_queryset и написать в нем примерно следующее:
if 'start_day' in self.request.query_params and  'exit_day' in self.request.query_params and  'doctor' in self.request.query_params and  'department' in self.request.query_params:
  return Model.objects.filter(...)
elif 'start_day' in self.request.query_params and  'exit_day' in self.request.query_params and  'doctor' not in self.request.query_params and  'department' in self.request.query_params:
  return Model.objects.filter(...)

Ну и так далее. Т.е. смотрите какие параметры пришли и исходя из этого формируете queryset
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы