1
除了通常的:id
和:timestamp
列以外,我的应用程序还有一个用户模型,其中有两个整数列:votes
和:badges
。如何使用多列输入设置默认范围订单
目前,用户的默认范围是:
default_scope order: 'users.created_at DESC'
如何更新默认范围由组成一个排名算法来排序:票:徽章?
我的算法是:
ranking = 2 * votes + badges
什么是做到这一点的最好方法是什么?
我希望能够创建模型的方法如下,但这不起作用
def ranking
2 * self.votes + self.badges
end
我需要在我的数据库中创建一个ranking
列? 非常感谢您的帮助!
感谢@cdesrosiers。我会如何去测试更复杂的博客文章公式,比如'(blog.votes - 1)/(Time.now - blog.created_at)/1.hour +2)^ 1.5'。有没有一种方法可以先定义公式,然后在范围中使用它? – umezo