Ссылка на результаты поиска с помощью Ruby
Я полный новичок в Ruby и Nanoc, но проект у меня на коленях. По сути, код для страницы возвращает отдельные URL для каждого элемента, связывающего их с руководством. Я пытаюсь создать URL, который будет перечислять все руководства в одном поиске. Любая помощь приветствуется.
Вот код:
<div>
<%
manuals = @items.find_all('/manuals/autos/*')
.select {|item| item[:tag] == 'suv' }
.sort_by {|item| item[:search] }
manuals.each_slice((manuals.size / 4.0).ceil).each do |manuals_column|
%>
<div>
<% manual_column.each do |manual| %>
<div>
<a href="<%= app_url "/SearchManual/\"#{manual[:search]}\"" %>">
<%= manual[:search] %>
</a>
</div>
<% end %>
</div>
<% end %>
</div>
1 ответ
Поскольку вы не указали, какие товары возвращаются, я сделал общий пример:
require 'uri'
# let suppose that your items query has the follow output
manuals = ["Chevy", "GMC", "BMW"]
# build the url base
url = "www.mycars.com/search/?list_of_cars="
# build the parameter that will be passed by the url
manuals.each do |car|
url += car + ","
end
# remove the last added comma
url.slice!(-1)
your_new_url = URI::encode(url)
# www.mycars.com/?list_of_cars=Chevy,GMC,BMW
# In your controller, you will be able to get the parameter with
# URI::decode(params[:list_of_cars]) and it will be a string:
# "Chevy,GMC,BMW".split(',') method to get each value.
Некоторые соображения:
Я не знаю, если вы собираетесь использовать это на представлении или контроллере, если будет на виду, чем обернуть код с
<% %>
синтаксис.Что касается формата URL, вы можете найти больше вариантов его построения: Передача массива через URL
При написании вопроса о SO, пожалуйста, больше работайте над этим. Вы поможете нам найти быстрый ответ на ваш вопрос, а вы - меньше ждать ответа.
Если вам нужно что-то более конкретное, просто спросите, и я посмотрю, смогу ли я ответить.