如何按顺序列出

时间:2019-06-19 03:39:51

标签: ruby-on-rails ruby

我想按点数列出用户。但是我没有迁移点列,而是在模型中定义点,如下所示。

class User < ApplicationRecord
  def my_point(user)
    point = user.posts.count * 10 + user.followers.count * 2
  end
end

如何在视图中安排用户?

1 个答案:

答案 0 :(得分:2)

请记住,您可以引用self来引用实例,并从方法中删除参数。

class User < ApplicationRecord
  def points
    (self.posts.count * 10) + (self.followers.count * 2)
  end
end

@users = User.includes(:posts, :followers).all.sort_by { |user| user.points }