|
|
@@ -66,7 +66,7 @@ def query(request):
|
|
|
table = dashboard['properties'][0]['table']
|
|
|
|
|
|
if fqs:
|
|
|
- filters = ' AND '.join(['%s = %s' % (fq['field'], value) for fq in fqs for value in fq['filter']])
|
|
|
+ filters = ' AND '.join(['%s = %s' % (fq['field'], _get_escaped_value(value, fq['field'], dashboard)) for fq in fqs for value in fq['filter']])
|
|
|
else:
|
|
|
filters = ''
|
|
|
|
|
|
@@ -137,6 +137,17 @@ def query(request):
|
|
|
return JsonResponse(result)
|
|
|
|
|
|
|
|
|
+
|
|
|
+def _get_field_type(name, dashboard):
|
|
|
+ return [f for f in dashboard['properties'][0]['fields'] if f['name'] == name][0]['type']
|
|
|
+
|
|
|
+def _get_escaped_value(value, field_name, dashboard):
|
|
|
+ if _get_field_type(field_name, dashboard) == 'string':
|
|
|
+ return "'%s'" % value
|
|
|
+ else:
|
|
|
+ return value
|
|
|
+
|
|
|
+
|
|
|
def new_facet(request):
|
|
|
result = {'status': -1, 'message': 'Error'}
|
|
|
|