Sha256: bc81a0c01b828496dc7cc6cb27ce668dbd263c297be6d9014dbdd13cddd80e64
Contents?: true
Size: 738 Bytes
Versions: 71
Compression:
Stored size: 738 Bytes
Contents
# frozen_string_literal: true module Decidim module Surveys # A class used to collect user answers for a survey class SurveyUserAnswers < Rectify::Query # Syntactic sugar to initialize the class and return the queried objects. # # survey - a Survey object def self.for(survey) new(survey).query end # Initializes the class. # # survey = a Survey object def initialize(survey) @survey = survey end # Finds and group answers by user for each survey's question. def query answers = SurveyAnswer.where(survey: @survey) answers.sort_by { |answer| answer.question.position }.group_by(&:user).values end end end end
Version data entries
71 entries across 71 versions & 2 rubygems