1

我想在控制器中使用这个范围。
我怎样才能添加到这一行?我不能只是把.recent任何地方放在行中......现在我可以忽略order: 'updated_at DESC' 我只是为了以防万一。

用户控制器

@users = User.find_by_username(params[:id]).all_following(order: 'updated_at DESC')

用户模型

scope :recent, lambda { |n = 10| order("last_active_at DESC").limit(n) }
4

1 回答 1

2

写吧

@users = User.find_by_username(params[:id]).all_following.recent

在您的控制器中。这应该为您提供最近关注的用户。作用域的美妙之处在于您可以连接它们(在本例中为all_followingrecent)。

顺便说一句,我怀疑找到带有 id 的用户名是否有意义。如果您在 params 哈希中有用户名,您将需要说User.find(params[:id]).all_following.recent或。User.find_by_username(params[:username]).all_following.recent

于 2013-01-20T23:56:46.290 回答