Мое текущее приложение использует URL-адреса, такие как:
/ philsturgeon / philsturgeon / trip_slug
У меня есть поездки, связанные с пользователями в моей модели, например:
class Trip < ActiveRecord::Base
belongs_to :user
def to_param
"#{user.username}-#{slug}"
end
end
Теперь мне сказали о to_param, который кажется потрясающим.Это означает, что я могу использовать обычные ссылки на ресурсы:
<h4><%= link_to trip.name, trip %></h4>
вместо того, чтобы вручную создавать строки, подобные этой:
redirect_to('/' + current_user.username + '/' + @trip.slug)
Проблема в том, что я получаю разделенный дефисом (или тире) URL.Как только я изменяю URL to_param на #{user.username}/#{slug}
(обратите внимание на косую черту вместо черты), я получаю сообщение об ошибке:
ActionController :: RoutingError в Home # index
Отображение/Users/phil/Scripts/ruby/travlr/app/views/home/index.html.erb, где поднята строка # 27:
Не найдено ни одного маршрута {: action => "destroy",: controller =>"trips",: id => #}
Извлеченный источник (около строки # 27):
24: <% = gravatar trip.user.email, 50%> 25: 26:27: <% = link_to trip.name, trip%> 28: 29: 30:
Пользователь: