我需要创建指向users/id/microposts
的链接,其中id
是用户ID。我想知道如何用link_to
来做到这一点?
我目前使用的HTML代码是:
<strong><a href="/users/<%= @user.id %>/microposts">Microposts</a></strong> <%= user.microposts.count %>
其中包含以下内容:
<a href="/users/1/microposts">Microposts</a>
答案 0 :(得分:0)
假设您的路线设置正确,那将是微博的嵌套路线,在轨道3中它将是
resources :users do
resources :microposts
end
然后在您看来,使用link_to可以
<%= link_to "Microposts", user_microposts_path(user) %>
这可能是current_user,@ user ...您想要微博的任何用户对象,它可能来自
@users.each do |user|
<%= link_to "Microposts", user_microposts_path(user) %>
end
OR
<%= link_to "Microposts", user_microposts_path(current_user) %>
编辑:在我忘记传递的用户对象中添加了一些示例。
答案 1 :(得分:0)
在routes.rb中,你应该有这样的东西:
match '/users/:id/microposts' => 'microposts#index_by_user', :as => :microposts_by_user
并且在视图中,您可以这样做:
<%= link_to "Microposts", microposts_by_user_path( @user) %>