我正在努力完成这样的事情:
我正在创建一个简单的博客。我为我的博客设置了类别。 我希望当我的用户访问帖子/索引时,他会看到所有类别的列表。
实施例: 文本 图像
点击某个类别后,我的用户会被重定向到帖子/新页面,其中category_id字段将通过hidden_field传输。
所以我现在的代码是:
帖子/索引中的
<% @categories.each do |c| %>
<%= link_to c.name, new_post_path(:category => c.id) %><br />
<% end %>
在我的帖子中/ _form我正在尝试做这样的事情
<%= f.hidden_field :category_id, :value => params[:category_id] %>
虽然不起作用,因为html输出是
没有传递任何价值。
在这里进行的正确方法是什么? THX!
答案 0 :(得分:1)
乍一看,混淆参数名称类别和category_id似乎是一个简单的错误。
试试这个:
<% @categories.each do |c| %>
<%= link_to c.name, new_post_path(:category_id => c.id) %><br />
<% end %>
答案 1 :(得分:1)
此外,根据我在您的代码中可以理解的内容,似乎帖子属于某个类别。在这种情况下,您可以将路径从一个嵌套到另一个,并且可以访问用于创建嵌套对象的路径,例如new_category_post(@category)。
路由看起来像这样:
resources :categories do
resources :posts
end
您可以在此处阅读此事:http://guides.rubyonrails.org/routing.html