Учитывая символ в направляющих, как я получаю Класс? Таким образом, я мог назвать что-то как:
give_class(:post).find(:all)
или подобный.
Сначала преобразуйте в строку.
class_name = symbol.to_s
Оттуда вам нужно будет отформатировать строку в правильном имени класса, используя методы, представленные Включение активации .
Camelize
повернет «My_Module»
в «MyModule»
классификация
включится my_models »
в myModel '
Camelize
, скорее всего, вы хотите, учитывая свой фрагмент кода.
Затем используйте Метод константа
:
klass = class_name.constantize
классный!
Я искал этот ответ в stackoverflow и не смог найти его в том виде, как я его искал, поэтому я подумал, что сам отвечу на вопросы:
Вышеупомянутый ответ был правильным, но Фактически я нашел документы, которые объясняют немного лучше:
Существует два основных метода:
Отсюда вы зовете константизу, и Виола! у тебя есть свой класс.