如何在运行时基于ActiveRecord动态创建类?(红宝石)

如何在运行时基于ActiveRecord动态创建类?(红宝石),activerecord,metaprogramming,ruby-1.9.2,Activerecord,Metaprogramming,Ruby 1.9.2,我正在试验元编程,希望动态创建一个继承自ActiveRecord的类 例如,我可以这样做: Object.const_set("Orders", Class.new { def blah() 42 end }) 所以现在我可以: o = Orders.new o.blah #<== 42 o=Orders.new o、 废话试着这样做: SomeClass = Class.new(ActiveRecord::Base) do .... #some behaviour end

我正在试验元编程,希望动态创建一个继承自ActiveRecord的类

例如,我可以这样做:

Object.const_set("Orders", Class.new { def blah() 42 end })
所以现在我可以:

o = Orders.new
o.blah   #<== 42
o=Orders.new
o、 废话试着这样做:

SomeClass = Class.new(ActiveRecord::Base) do
  .... #some behaviour
end

哈实际上,我刚刚发现了如何做到这一点,我来这里是为了回答我自己的问题。哈哈,但既然你赢了我,我就给你+1和答案积分。我是这样做的:
Object.const\u set(“Computers”,Class.new(ActiveRecord::Base){})
Now,
Computers.all
就像一个champ。谢谢
Object.const_set("Orders", Class.new { def blah() 42 end } < ActiveRecord::Base)
SomeClass = Class.new(ActiveRecord::Base) do
  .... #some behaviour
end