Рельсы упорядочивают поиск по количеству предметов на другом столе - PullRequest
1 голос
/ 15 сентября 2011

Я новичок в рельсах, поэтому, пожалуйста, дайте мне знать, если я думаю о вещах неправильно ...

Моя задача:

У меня есть таблица Users и таблица Posts.Я хочу выяснить, у каких пользователей больше всего сообщений.

Какой правильный способ сделать это?

1 Ответ

1 голос
/ 15 сентября 2011

Используйте для этой цели счетчик кэша, затем сортируйте по столбцу. См. Справочное объяснение здесь Rails counter_cache

#model
class User < ActiveRecord::Base
  has_many :posts

  scope :popular, :order('posts_count')
end

class Post < ActiveRecord::Base
  belongs_to :user, :counter_cache => true
end


#migration
add_column :users, :posts_count, :integer, :default => 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...