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 "/"?
source to share
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
.
source to share