我有一个 Module,里面有一些 Entity Class,另外还需要加一些 Entity Class 的变种,只是对原有的 Entity Class 做了一些变化,我想能运行时生成这些变种 Class,还是在这个 Module 里。 请问这个应该怎么搞,主要是
ruby def variant_entity(name) return if define?(name.classify.constantize) == "constant" klass = Class.new Entity do def changes end ... end Object.const_set name.classify, klass end
仅供参考
#1 楼 @gihnius 代码构造类,应该用 eval(“class xxx。。。end”)
语句之间用;分开
#2 楼 @yan32768 条条大路通罗马 eval 字符串很没意思的