Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 对嵌套资源进行分类的rails_Ruby On Rails_Ruby_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 对嵌套资源进行分类的rails

Ruby on rails 对嵌套资源进行分类的rails,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我有嵌套资源帖子的用户。我有一个页面,显示所有用户的所有帖子。但是,在左边的一栏中,我想按用户对他们进行分类,如下所示,其中包含指向URL的链接,该URL的参数类似于?username=laura,例如,仅显示他们的帖子。我很确定我能找到URL参数,但要对它们进行排序,如下所示,对我来说很困难。有什么建议吗?谢谢 您应该对它们进行排序: @sorted_users = users.sort { |left,right| left.posts.count <=> right.pos

我有嵌套资源帖子的用户。我有一个页面,显示所有用户的所有帖子。但是,在左边的一栏中,我想按用户对他们进行分类,如下所示,其中包含指向URL的链接,该URL的参数类似于
?username=laura
,例如,仅显示他们的帖子。我很确定我能找到URL参数,但要对它们进行排序,如下所示,对我来说很困难。有什么建议吗?谢谢

您应该对它们进行排序:

@sorted_users = users.sort { |left,right| left.posts.count <=> right.posts.count }
@sorted_users=users.sort{| left,right | left.posts.count right.posts.count}
此外,如果您有一个帖子的cache_列,您可能应该使用数据库来实现这一点。

您应该对帖子进行排序:

@sorted_users = users.sort { |left,right| left.posts.count <=> right.posts.count }
Users.includes(:posts).map{|u| [u.name, u.posts.count, u.id]}.sort
@sorted_users=users.sort{| left,right | left.posts.count right.posts.count}
此外,如果您有一个用于post的cache_列,那么您可能应该使用数据库来实现这一点

Users.includes(:posts).map{|u| [u.name, u.posts.count, u.id]}.sort
将为您提供一个排序的用户数组、post计数和用户id,如

[
 ["Adam", 23, 23],
 ["Brad", 12, 2],
 ["Mike", 1, 44]
]
您可以向该用户输入链接的前两个元素和链接目标的用户id

对于成千上万的用户和/或帖子,这可能会变得很慢,但这应该会让你开始

将为您提供一个排序的用户数组、post计数和用户id,如

[
 ["Adam", 23, 23],
 ["Brad", 12, 2],
 ["Mike", 1, 44]
]
您可以向该用户输入链接的前两个元素和链接目标的用户id


对于成千上万的用户和/或帖子来说,这可能会变得很慢,但应该可以让您开始了。

不,它在所有rails版本中都存在,在这种情况下,它将是类Posttrue;结束时,用户类必须有一个posts\u count列,并且可以在不加载posts的情况下用于排序。不,在所有rails版本中都有它,在这种情况下,它将是类Posttrue;结束,用户类必须有一个posts\u count列,它可以用于排序而不加载帖子。我只需要为一组选定的帖子使用这些。我对帖子进行了查询,并将其保存在@posts\u query中。。。我如何才能做到这一点,但只能在我的查询?嗯,我只需要这些为一组选定的职位。我对帖子进行了查询,并将其保存在@posts\u query中。。。我如何才能做到这一点,但只能在我的查询范围内?