Sha256: 78a2bc1c031ff005dd07f29576504762b81de2cfe257b5377470b208ca5fc721
Contents?: true
Size: 729 Bytes
Versions: 1
Compression:
Stored size: 729 Bytes
Contents
require 'base64' module Proposal def self.included(receiver) receiver.belongs_to :item, :polymorphic => true receiver.validates_presence_of :item_id, :item_type, :candidate_data receiver.send :include, InstanceMethods end module InstanceMethods def candidate_attributes ActiveSupport::JSON.decode Marshal.load(Base64.decode64(candidate_data)) end def candidate_attributes=(candidate_attributes) self.candidate_data = Base64.encode64(Marshal.dump(candidate_attributes.to_json)) end end end class ReleasableCandidate < ActiveRecord::Base include Proposal end class ReleasableCandidateItem < ActiveRecord::Base include Proposal validates_presence_of :collection_name end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
act_as_releasable-0.0.1 | lib/act_as_releasable/models.rb |