2015-09-29 3 views
0

У меня есть сценарий, где мне нужны данные фильтра, используя RSQL. Мне нужно получить конкретные столбцы, используя $projection=field_list=in=(FAMILY Id) Но поскольку столбец здесь «FAMILY Id» имеет пробел, его метание ниже ошибки.Как обрабатывать пространство в значении проекционного списка RSQL

cz.jirutka.rsql.parser.ParseException: Encountered " <UNRESERVED_STR> "Id "" at line 1, column 23. 

Ожидал один из:

<OR> ... 
")" ... 

Если я прохожу то же самое в одинарные кавычки, она будет работать, как $projection=field_list=in=('FAMILY Id'), но есть ли другой способ справиться с такой же, как и у меня есть еще несколько сценарии аналогичным образом, когда размещение одинаковых в одинарных кавычках тоже не работает.

спасибо.

~ Шиам

ответ

0

Это четко указано в documentation:

Аргумент может быть одно значение или несколько значений в скобках разделенных запятой. Значение, которое не содержит зарезервированного символа или пробел, может быть некорректным, другие аргументы должны быть заключены в одинарные или двойные кавычки.

field_list=in=(FAMILY Id) является недействительным, так что вы должны использовать одинарные или двойные кавычки. Другого пути нет, я считаю, что цитирования достаточно для всех случаев. Ну, кроме того, что у вас есть как одиночные, так и двойные кавычки внутри аргумента - RSQL в настоящее время не указывает никакого escape-символа.