Sha256: 62be0600ba8a138a1f532dee7e85ee8e916637c473c4e3e546352220c2e0af23
Contents?: true
Size: 667 Bytes
Versions: 39
Compression:
Stored size: 667 Bytes
Contents
module Polyblock module HasPolyblock extend ActiveSupport::Concern included do end module ClassMethods def has_polyblock(name, options={}) defaults = {:class_name => "Polyblock::Block", :as => :contentable} has_one name, -> { where(:name => name) }, defaults.merge(options) accepts_nested_attributes_for name include Polyblock::HasPolyblock::LocalInstanceMethods end end module LocalInstanceMethods def has_polyblock_content_for?(name) !self.send(name).nil? and !self.send(name).content.blank? end end end end ActiveRecord::Base.send :include, Polyblock::HasPolyblock
Version data entries
39 entries across 39 versions & 1 rubygems