0

我是新来的轨道。

当我为用户生成脚手架时,在 products/index.html 我有这个代码

<h1>Listing users</h1>

<table>
  <tr>
    <th>Name</th>
  </tr>

<% @users.each do |user| %>
  <tr>
    <td><%=h user.name %></td>
    <td><%= link_to 'Show', user %></td>
    <td><%= link_to 'Edit', edit_user_path(user) %></td>
    <td><%= link_to 'Destroy', user, :confirm => 'Are you sure?', :method => :delete %></td>
  </tr>
<% end %>
</table>

<br />

<%= link_to 'New user', new_user_path %>

-------------------------------------------------------------------------------------------------------------------------------

My doubt is in link_to tags,

<%= link_to 'Show', user %>
<%= link_to 'Edit', edit_user_path(user) %>
<%= link_to 'New user', new_user_path %>

为什么不 show_user_path(user) ?对于第一个链接“显示”,任何帮助都会受到欢迎

4

3 回答 3

2

show_user_path 会起作用,只是更冗长。

欢迎来到 Ruby on Rails 的魔力。

于 2012-09-22T11:40:11.440 回答
0

在生成脚手架时,您创建了资源“用户”,这就是为什么您可以“按原样”使用它的原因link_to:rails 知道您想查看资源用户。 指向控制器show_user_path(user)的链接直接显示操作。

于 2012-09-22T12:14:06.513 回答
0

这是 Ruby on Rails 中的约定,您也可以使用show_user_path(user).

于 2012-09-22T17:02:00.707 回答