Итак, у меня есть таблица результатов для турнира, где могут встречаться несколько матчей с одним и тем же игроком.Rails 3 Sort Scope By Self-Accumulated Count
Таким образом, некоторые выборочные данные могут быть:
Результаты
Player_ID | Match_ID|Win|Elapsed_Time|etc..
1 | 1 |T | 1:00 |etc..
2 | 1 |F | 1:00 |etc..
1 | 2 |T | 3:00 |etc..
3 | 2 |F | 3:00 |etc..
Я хочу, чтобы подготовить рамки, которые будут рассчитывать поля Win, которые установлены Истина для каждого игрока и и группы по этому количеству поля ,
Так псевдо-код будет что-то вроде ...
область применения: most_wins,: все,: order_by => "Count (Wins игрока)"
Это даже возможно, или я должен повторно подумайте о моей структуре базы данных?
HI Forker, спасибо, что заполнили меня в области в Rails 3. Код, который вы предоставили, почти работает, но мне пришлось изменить def с_win_count на self.with_win_count, иначе он предоставит неопределенный метод для ошибки класса. – Noz
ах, хороший! Благодаря! – forker
Есть ли способ сохранить это в пределах только таблицы результатов? Причина, по которой я спрашиваю, заключается в том, что я использую это в динамическом запросе, который создается, и есть дополнительные поля из таблицы Results, которые я хотел бы фильтровать. Что-то вроде: 'query = Player.with_win_count.where (..........) query = query.where (results_field = ....) если условие' конечно, таблица Player является родительским результатом – Noz