Sha256: 095cc4d042b0d9d92bb0ad06e4f16895f8c0929f9e206ceb8e1a87bce65b89dc
Contents?: true
Size: 694 Bytes
Versions: 4
Compression:
Stored size: 694 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 Marshal.load(Base64.decode64(candidate_data)) end def candidate_attributes=(candidate_attributes) self.candidate_data = Base64.encode64(Marshal.dump(candidate_attributes)) 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
4 entries across 4 versions & 1 rubygems