Period in generated url instead of forward slash

I am getting strange state in my application routes.

This is the main discussion forum I am building with rails. I use nested resources like:

 resources :forums do
  resources :discussions
 end

      

and generating a view to display all discussions, requiring that clicking on any of those discussions go to the corresponding discussion, such as "forum / 2 / discussion / 3". But when I use:

<% Discussion.find_each do |discussion| %>
 <%= link_to discussion.title, forum_discussions_path(discussion.forum_id, discussion) %>
<% end %>

      

the generated url / link is "forums / 2 / discussion .3". Any ideas why there is a "." instead of "/"?

+3


source to share


1 answer


You need to use a route forum_discussion

, not a routeforum_discussions

forum_discussion GET /forums/:forum_id/discussions/:id(.:format) discussions#show

      

In general it looks like

<% Discussion.find_each do |discussion| %>
  <%= link_to discussion.title, forum_discussion_path(discussion.forum_id, discussion) %>
<% end %>

      




You pointed it to this route

forum_discussions GET /forums/:forum_id/discussions(.:format) discussions#index

      

therefore the value was discussion.id

used as an option :format

.

+4


source







All Articles