URL по умолчанию, сгенерированный после запроса на получение в Rails, не очень приятен для просмотра.
Используя гем meta_search в приложении на Rails 3, я создал меню выбора для фильтрации списка статей по категориям. Код выглядит так:
<%= form_for @search, :url => articles_path, :html => {:method => :get} do |f| %>
<%= f.label :category_name_equals, "Filter by category:" %>
<%= f.collection_select :category_name_equals,
Category.all(:order => "name"), :name, :name, :include_blank => true %>
<%= f.submit "Search" %>
<% end %>
<table>
<tr>
<th>Title</th>
<th>Category</th>
</tr>
<% for article in @articles %>
<tr>
<td><%= link_to article.title, article %></td>
<td><%= article.category.name %></td>
</tr>
<% end %>
</table>
Прямо сейчас, когда форма отправлена, возвращается длинный URL-адрес, содержащий хэш параметров:
http://localhost:3000/articles?utf8=%E2%9C%93&search[category_name_equals]=
Reviews&commit=Search
Я хочу, чтобы URL был максимально чистым, например:
http://localhost:3000/articles/category/reviews
или
http://localhost:3000/articles?category=reviews
Какие существуют решения, чтобы сделать URL-адрес хэш-функции более читабельным для людей?