如何链接到Ruby on Rails中的users / id / microposts?

时间:2012-02-26 03:15:23

标签: ruby-on-rails ruby

我需要创建指向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>

2 个答案:

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