3
메타 프로그래밍을 실험 중이며 ActiveRecord에서 상속받은 클래스를 동적으로 만들고 싶습니다.런타임시 ActiveRecord 기반 클래스를 어떻게 동적으로 만들 수 있습니까? (Ruby)
예를 들어, 내가이 작업을 수행 할 수 있습니다
Object.const_set("Orders", Class.new { def blah() 42 end })
을 그래서 지금 할 수 있습니다
o = Orders.new
o.blah #<== 42
을하지만하려고 할 때 :
Object.const_set("Orders", Class.new < ActiveRecord::Base { def blah() 42 end })
나에게 구문 오류를 제공하고
Object.const_set("Orders", Class.new { def blah() 42 end } < ActiveRecord::Base)
Orders
클래스를 인스턴스화 할 때까지 불평하지 마십시오
팁이 있습니까?
감사합니다.
HA를! 나는 실제로 문자 그대로이 일을하는 법을 배웠고 나는 내 자신의 질문에 대답하기 위해 여기에왔다. LOL하지만 당신이 나를 때렸으니 +1과 답 신용을주었습니다. Object.const_set ("Computers", Class.new (ActiveRecord :: Base) {})'이제 Computers.all은 챔피언처럼 작동합니다. 감사! – cbmeeks
당신을 도울 다행, metaprogramming 규칙 !!!! :) – bor1s