新手问题 问个关于 link_to 的问题

babodx · 2013年02月21日 · 最后由 babodx 回复于 2013年02月21日 · 2578 次阅读

今天购买了 xdite 的 rails 101 正在学习。 发现了如下的 link_to 代码

<%= link_to 'Edit', edit_board_post_path(@board,@post) %> |
<%= link_to 'Back', board_posts_path(@board) %>

我看了 ruby on rails guides 里面只有 Action View Form Helper 章节,没有介绍这个 link_to 的。查看 api.rubyonrails.org 里面的也是是说了

link_to(*args, &block)

我现在只是直到 link_to 后面第一个参数是显示的链接文字。 关键是后面的 url 部分不是很清楚。 类似这些 board_posts_path 和 board_post_path 的代码,有没有详细解释该如何使用呢? 比如什么有时候是 board_posts_path 有的时候是 board_post_path 这里的 board 和 post 是我的两个 model 吗?还是因为有了这两个 controller 才可以这样用?

希望明白的朋友个讲讲或者给写描述这部分的资料看看

@babodx 呵呵,没认真看 API 文档吧: http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to

仔细看这一节,解释的非常详细了,后面还有好多例子。

你这不是 link_to 的问题吧,是 route 的问题。 http://guides.ruby-china.org/routing.html

感谢。确实是 route 的问题。原来是在 route.rb 里面添加建立一个 Resourceful 的路由的同时也会为你的应用自动添加一系列的 Helper 方法。 api 那篇我看了,例子很多,但是没有解释为什么会有 board_post_path 这样的说明

rake routes 看看就明白了 路由的链接而已

嗯。感谢大家,看完http://guides.ruby-china.org/routing.html 明白多了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号