From 1ab7d436cc06ae4c7d4413d1b6c9320e4d34cf8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Mazurek?= Date: Fri, 23 Oct 2015 18:17:52 +0200 Subject: [PATCH] adding support for multiple values for search filter --- rest_framework/filters.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/rest_framework/filters.py b/rest_framework/filters.py index 9105ab91d9..fc7882fe11 100644 --- a/rest_framework/filters.py +++ b/rest_framework/filters.py @@ -136,8 +136,13 @@ def get_search_terms(self, request): Search terms are set by a ?search=... query parameter, and may be comma and/or whitespace delimited. """ - params = request.query_params.get(self.search_param, '') - return params.replace(',', ' ').split() + params = request.query_params.getlist(self.search_param, '') + if params == '': + return [] + elif len(params) == 1: + return params[0].replace(',', ' ').split() + else: + return params def construct_search(self, field_name): if field_name.startswith('^'):