Ruby on rails 包含模块的元编程
我正在使用RubyonRails,目前我已经有了代码Ruby on rails 包含模块的元编程,ruby-on-rails,ruby,ruby-on-rails-3.1,metaprogramming,Ruby On Rails,Ruby,Ruby On Rails 3.1,Metaprogramming,我正在使用RubyonRails,目前我已经有了代码 if level == "Grad" include Grad else include Undergrad 其中level是表示“Grad”或“Undergrad”的字符串 我想使用元编程来包含正确的模块,而不使用if语句 像这样的 send :include, level 我该怎么做呢。最好的方法是什么?包括“#{level}”.constantize。这对你有用吗?包括“#{level}”.constantize。这对你有用
if level == "Grad"
include Grad
else
include Undergrad
其中level是表示“Grad”或“Undergrad”的字符串
我想使用元编程来包含正确的模块,而不使用if语句
像这样的
send :include, level
我该怎么做呢。最好的方法是什么?
包括“#{level}”.constantize
。这对你有用吗?包括“#{level}”.constantize
。这对你有用吗?很好,但是从你的回答中我只是把它简化为包含level。constantizeI的意思是,当你可以只使用level时,为什么你需要“#{level}”呢?很好,但是从你的回答中,我只是把它简化为包含level。constantizeI的意思是,当你可以只使用level时,为什么你需要“#{level}”呢