Method: Congo::ContentType#to_const

Defined in:
lib/congo/content_type.rb

#to_constObject

methods



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/congo/content_type.rb', line 30

def to_const
  klass = Class.new
  if self.embedded?
    klass.send(:include, MongoMapper::EmbeddedDocument)
  else
    klass.send(:include, MongoMapper::Document)
    klass.timestamps!
    set_collection_name(klass)
    apply_scope(klass)
  end
  
  klass.class_eval "    def content_type\n      @content_type ||= self.class.content_type\n    end\n    \n    def self.content_type\n      Congo::ContentType.find('\#{self._id}')\n    end\n  EOV\n  \n  apply_metadata(klass)\n  apply_migration(klass)\n  klass\nend\n"