Я просмотрел уже заданные вопросы, но не смог найти ответ.
У меня есть несколько моделей:
Каждый пользователь может подать много голосов, каждый голос связан с одним сообщением, каждое сообщение может быть связано со многими пользователями. Каждый пользователь может отдать только один голос за сообщение.
class User < ActiveRecord::Base
has_many :posts, :through => :user_posts
has_many :user_posts
end
class Vote < ActiveRecord::Base
belongs_to :user
belongs_to :post
end
class Post < ActiveRecord::Base
has_many :users, :through => :user_posts
has_many :user_posts, :dependent => :destroy
has_many :votes, :dependent => :destroy
end
class UserPost < ActiveRecord::Base
belongs_to :user
belongs_to :post
end
Я пытаюсь подсчитать, сколько раз «Пользователь А» голосовал за сообщения, принадлежащие «Пользователю Б» за последний день.
Я могу сделать это с помощью полного запроса SQL, но я хотел бы знать, есть ли упрощенный "Rails-friendly-способ" для этого.
Спасибо!
Augusto