链接到资源

时间:2011-04-13 08:10:39

标签: ruby-on-rails

我创建了模型,视图和控制器:

$ 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的链接以及我在这种情况下使用哪些操作?

2 个答案:

答案 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)

Polymorphic Routes Documentation