Properly parse comma-separated query string params

This commit is contained in:
Chris Hill-Scott
2016-04-13 12:47:24 +01:00
parent 1a6bb37171
commit 4da92f170a

View File

@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import time
import itertools
from flask import (
render_template,
@@ -26,14 +27,18 @@ from app.utils import (
def _parse_filter_args(filter_dict):
if not isinstance(filter_dict, MultiDict):
filter_dict = MultiDict(filter_dict)
out_dict = MultiDict()
if 'type' in filter_dict:
out_dict.setlist('template_type', filter_dict.getlist('type'))
if 'status' in filter_dict:
out_dict.setlist('status', filter_dict.getlist('status'))
return out_dict
return MultiDict(
(
key,
(','.join(filter_dict.getlist(key))).split(',')
)
for key in filter_dict.keys()
if ''.join(filter_dict.getlist(key))
)
@main.route("/services/<service_id>/jobs")
@@ -144,7 +149,8 @@ def view_notifications(service_id):
notifications=notifications['notifications'],
page=page,
prev_page=prev_page,
next_page=next_page
next_page=next_page,
request_args=request.args
)