У меня есть навигационная система, которая предоставляет постоянную ссылку для любой настройки связи.
Когда я запускаю строку через скрипт / консоль, она возвращает следующее:
>> Navigation.find_by_permalink("gems")
=> #<Navigation id: 10, text: "Gems", parent: nil, destination_controller: "pages", destination_action: "show", destination_id: "1", permalink: "gems", created_at: "2009-12-26 14:56:28", updated_at: "2009-12-26 14:56:28", previous: 9>
Когда я помещаю в свое приложение, я получаю это:
ActiveRecord::RecordNotFound in NavigationsController#permalink
Couldn't find Navigation without an ID
Мой запрос был "/ permalink / gems", а связанный маршрут:
map.permalink "permalink/:permalink", :controller => 'navigations', :action => 'permalink'
Код контроллера, который обрабатывает этот запрос:
def permalink
@nav=Navigation.find_by_permalink(params[:permalink])
redirect_to :controller => @nav.destination_controller, :action => @nav.destination_action, :id => @nav.destination_id
end
Кто-нибудь знает, почему это происходит?