Использование Postgresql 9.1 и Rails 3.2.2.Как бы я возвратил коллекцию последнего сингла users_checkins
для каждого места для данного пользователя?
Я пробовал
User.find(1)
.users_checkins
.joins(:venues_checkins)
.merge(VenuesCheckin.select('DISTINCT(venues_checkins.venue_id)'))
, но это не позволяет получить какие-либо атрибуты для UsersCheckin
.Мои модели ниже.
class Venue
has_many :venues_checkins
has_many :users_checkins, through: :venues_checkins
end
class UsersCheckin
#start:datetime
#finish:datetime
belongs_to :user
belongs_to :venues_checkin
end
class VenuesCheckin
belongs_to :venue
has_many :users_checkins
end
class User
has_many :users_checkins
has_many :venues_checkins, through: :users_checkins
has_many :venues, through: :users_checkins
end
Обновление
Если у пользователя есть 3 записи users_checkins для Места A и 3 для Места B, моя коллекция должна вернуть 2 записи содна запись является последним созданным users_checkin из Места A, а другая запись является последним созданным users_checkin из Места B, с коллекцией, упорядоченной по первой записи в коллекции, и которая из этих двух записей была создана последней.И я начинаю с пользователя, потому что я хочу только users_checkins для данного пользователя.