Rails новичок здесь. Я пытаюсь получить некоторые методы класса в named_scopes. Моя структура приложения похожа на приложение для блогов с комментариями пользователей. Каждая модель комментария имеет атрибут оценки, определяемый рейтингами других пользователей. Я хочу иметь именованный объем, который возвращает десяти лучших пользователей с наибольшим общим счетом из суммы всех баллов за каждый комментарий, который они сделали.rails конвертировать методы класса в именованный диапазон
Чтобы получить общий балл, который я создал этот метод:
class User < ActiveRecord::Base
# total score for all comments made by a particular user
def total_score
comments.sum(:score)
end
end
Затем, чтобы получить лучшие десять баллов как метод класса, я использую это:
class User < ActiveRecord::Base
# The top ten users ranked by total score
def self.top_commenters
find(:all, :limit => 10).sort_by {|commenter| commenter.total_score}.reverse
end
end
Я пытался чтобы получить ту же функциональность в именованной области, но я не могу понять ее.
Любые предложения?
Упс, посмотрите, как эта ссылка объясняет все это: http://railsforum.com/viewtopic.php?id=28709 –