Формат параметра строки запроса Rails при предоставлении API с фильтрами - PullRequest
2 голосов
/ 12 августа 2011

Я открываю несколько вызовов API REST для использования другими. Некоторые из них включают поисковые фильтры.

Допустим, у меня есть конечная точка продуктового магазина. Когда я в настоящее время звоню, я могу использовать:

/grocery_items/index.json?types[]=fruit&types[]=deli

Оставив меня с params [: types] в качестве хорошей коллекции.

Однако, чтобы облегчить жизнь людям, использующим мой API, я хочу предложить что-то вроде этого:

/grocery_items/index.json?types=fruit,deli

Кажется тривиальным, просто разделить мои параметры на коллекцию, но мне интересно, есть ли подводные камни, поскольку это, кажется, противоречит тому, как рельсы ожидают, что коллекции поступят как параметры.

1 Ответ

2 голосов
/ 12 августа 2011

Я не вижу ничего плохого в быстром params[:types].split(','), чтобы сделать вызов вашего API более простым в использовании. Довольно часто делать трюки со строкой запроса, и это действительно ручное изменение.

...