给定 rails 中的一个符号,我如何获得一个类?所以我可以调用类似的东西:
give_class(:post).find(:all)
或类似。
最佳答案
首先,转换为字符串。
class_name = symbol.to_s
从那里,您需要使用 ActiveSupport's Inflector 提供的方法将字符串格式化为正确的类名。 .
camelize
会转'my_module'
进入 'MyModule'
classify
会转'my_models'
进入 'MyModel'
camelize
鉴于您的代码片段,更有可能是您想要的。然后使用
constantize
方法:klass = class_name.constantize
优雅!
关于ruby-on-rails - rails : How do I convert a symbol to a class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164218/