def get(self, object_id): args = self.parser.parse_args() osmanager = ObjectSubjectsManager(**args) somanager = SubjectObjectsManager(**args) votes = osmanager.scoredrange( object_id=object_id, offset=args['offset'], size=args['size'], min_vote=args['vote'] or '-inf', max_vote=args['vote'] or '+inf', reverse=args['sort'] == '-', ) if not votes: return [] reviews = osmanager.reviews(object_id, *[user_id for user_id, _ in votes]) reply = [ get_user_object_reply( object_id=object_id, user_id=user_id, vote=vote, when=somanager.score(user_id=user_id, object_id=object_id), review=reviews[user_id], ) for user_id, vote in votes ] return reply