Как создать ссылку, которая передает идентификатор для пользовательского действия в Rails? 0 <% = link_to "PDF",: action => "showpdf",: id => "# enj@letter.idgoti.pdf"% > - PullRequest
0 голосов
/ 17 февраля 2011

У меня есть следующий код:

 <%= link_to "PDF", :action => "showpdf", :id => "#{@letter.id}.pdf" %>

'showpdf' - это действие в моем контроллере писем.

Я ожидаю, что по этой ссылке должно получиться следующее:

 http://domain.com/letters/showpdf/id.pdf

Но вместо этого я получаю:

 http://domain.com/letters/showpdf?id.pdf

Если маршруты по умолчанию: controller /: action /: id не должны это работать?

Нужно ли делатьчто-то в маршрутах, хотя формат по умолчанию отображается правильно?Спасибо!

1 Ответ

1 голос
/ 17 февраля 2011

Вы пробовали что-то вроде:

<%= link_to "PDF", :action => "show", :id => letter.id, :format => :pdf %>

где ваш маршрут будет

: Контроллер /: Действие /: ID:. Формат

и в ваших контроллерах "показать" действие:

respond_to do |format|
  format.pdf  .....
  format.html .....
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...