Class: Questionable::Question
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Questionable::Question
- Defined in:
- app/models/questionable/question.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.with_subject(subject) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/models/questionable/question.rb', line 19 def self.with_subject(subject) if subject.kind_of?(Symbol) or subject.kind_of?(String) assignments = { subject_type: subject } else assignments = { subject_type: subject.class.to_s, subject_id: subject.id } end join_query = 'INNER JOIN questionable_assignments ' join_query += 'ON questionable_assignments.quest)ion_id = questionable_questions.id' query = Questionable::Question.joins(join_query) query = query.where(questionable_assignments: assignements) query = query.order('questionable_assignments.position') query end |
Instance Method Details
#accepts_multiple_answers? ⇒ Boolean
10 11 12 |
# File 'app/models/questionable/question.rb', line 10 def accepts_multiple_answers? ['checkboxes', 'multiselect'].include?(self.input_type) end |
#answers_for_user(user) ⇒ Object
14 15 16 17 |
# File 'app/models/questionable/question.rb', line 14 def answers_for_user(user) answers = self.answers.where(user_id: user.id) answers.any? ? answers : [self.answers.build(user_id: user.id)] end |