Помощники пути в цикле - PullRequest
       1

Помощники пути в цикле

0 голосов
/ 27 сентября 2011

У меня есть Foo, :has_many Бары.GET Foo#index показывает все бары.Вид выглядит следующим образом:

<% @foos.each do |foo| %>
    <% foo.bars.each do |bar| %>
        <%= link_to 'Download', download_bar_path %>
        <%= link_to 'New', new_bar_path( :foo => foo.id ) %>
    <% end %>
<% end %>

В контроллере Bars есть def download и маршрут:

resources :bars do
    member do
        get 'download'
    end
end

rake routes показывает

download_bar GET    /bars/:id/download(.:format)     {:action=>"download", :controller=>"bars"}

иURL /bars/1/download действительно работает, но первая ссылка в представлении (download_bar_path) - нет.Там написано No route matches {:action=>"download", :controller=>"bars"}.

В чем может быть проблема?

Ответы [ 2 ]

2 голосов
/ 27 сентября 2011
<% @foos.each do |foo| %>
  <% foo.bars.each do |bar| %>
    <%= link_to 'Download', [:download, bar] %>
    <%= link_to 'New', [:new, :bar] %>
  <% end %>
<% end %>
1 голос
/ 27 сентября 2011

Вы не указали бар для загрузки, вам нужно добавить его, изменив эту строку

<%= link_to 'Download', download_bar_path(bar) %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...