Если u
является подклассом ActiveRecord::Base
, ваша ссылка должна быть такой:
<%= link_to u.filename, u %>
Тот же Rails обнаружит, что u
является объектом с контроллером, и преобразует его в действительный URL-адрес REST (и перенаправит вас на действие show).
Если это не ваш сценарий, скажите, пожалуйста.
[РЕДАКТИРОВАТЬ]
Если вы знаете, как работает Rails, пропустите этот параграф:
С map.resources: upload вы сообщаете rails, что у вас есть ресурс под названием Upload, который имеет UploadController и генерирует маршруты для 5 действий: new/create, index, show, edit/update
и destroy
. Каждому действию нужен метод в контроллере (см. Пример ClientsController в Руководства по Rails ).
Повышение "Нет ответа на показ" возникает, когда у вас нет UploadsController#show
. Пример этого метода:
def show
@upload = Upload.find(params[:id])
respond_to do |format|
format.html
format.xml {render :xml => @upload}
end
end
Этот метод отображает файл view / uploads / show (не забудьте создать его).