Sha256: 95d22f63ab3a19c17724df4a3014f4a4e692a9287f02d0c0de0332c16b3a801c
Contents?: true
Size: 1.05 KB
Versions: 1
Compression:
Stored size: 1.05 KB
Contents
module Rapidfire class Question < ActiveRecord::Base belongs_to :question_group, :inverse_of => :questions default_scope order(:position) validates :question_group, :question_text, :presence => true serialize :validation_rules attr_accessible :question_group, :question_text, :validation_rules, :answer_options def self.inherited(child) child.instance_eval do def model_name Question.model_name end end super end def rules validation_rules || {} end # answer will delegate its validation to question, and question # will inturn add validations on answer on the fly! def validate_answer(answer) if rules[:presence] == "1" answer.validates_presence_of :answer_text end if rules[:minimum].present? || rules[:maximum].present? min_max = { minimum: rules[:minimum].to_i } min_max[:maximum] = rules[:maximum].to_i if rules[:maximum].present? answer.validates_length_of :answer_text, min_max end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rapidfire-1.0.0 | app/models/rapidfire/question.rb |