我创建了模型,视图和控制器:
$ rails generate scaffold Post name:string title:string content:text
我运行服务器,如果我在浏览器http:\ localhost:3000 \ posts中打开,我会看到帖子列表。 现在我需要创建此页面的链接。类似的东西:
<%= link_to("settings", { :controller => 'groups', :action => 'index'}) %>
但是我在打开此页面时遇到错误:
Couldn't find Group with ID=index
我如何创建http:\ localhost:3000 \ posts的链接以及我在这种情况下使用哪些操作?
答案 0 :(得分:8)
我认为路径助手在这些情况下非常出色。你可以这样做:
<%= link_to("Posts", posts_path) %>
在这种情况下,posts_path将链接到http://localhost:3000/posts
当您使用use resources:routes.rb中的帖子时,您会自动获得一些路径助手。例如:
posts_path # /posts
post_path(@post) # /posts/1
edit_post_path(@post) # /posts/1/edit
new_post_path # /posts/new
答案 1 :(得分:1)
如果您的路线如下:
resources :groups
在config/routes.rb
中,您将获得帮助groups_path
。您可以使用rake routes
查看所有路线和帮助,但在这种情况下,您将拥有:
groups_path
group_path(@group)
edit_group_path(@group)