Sha256: 49cc533e2b64930b35eb98cae52231bb4139a911a7d489fc44ad2c7a2c9a3187
Contents?: true
Size: 579 Bytes
Versions: 16
Compression:
Stored size: 579 Bytes
Contents
module Effective class PollQuestionOption < ActiveRecord::Base belongs_to :poll_question effective_resource do title :text position :integer timestamps end before_validation(if: -> { poll_question.present? }) do self.position ||= (poll_question.poll_question_options.map { |obj| obj.position }.compact.max || -1) + 1 end scope :sorted, -> { order(:position) } validates :title, presence: true validates :position, presence: true def to_s title.presence || model_name.human end end end
Version data entries
16 entries across 16 versions & 1 rubygems