Module: ActsAsFu
- Defined in:
- lib/acts_as_fu/base.rb
Defined Under Namespace
Classes: Connection
Instance Method Summary collapse
Instance Method Details
#build_model(name, options = {}, &block) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/acts_as_fu/base.rb', line 20 def build_model(name, ={}, &block) connect! unless connected? klass_name = name.to_s.classify super_class = [:superclass] || ActsAsFu::Connection contained = [:contained] || Object contained.send(:remove_const, klass_name) rescue nil klass = Class.new(super_class) contained.const_set(klass_name, klass) # table_name isn't available until after the class is created. if super_class == ActsAsFu::Connection ActsAsFu::Connection.connection.create_table(klass.table_name, :force => true) { } end model_eval(klass, &block) klass end |