Как динамически вызывать метод класса в ruby - PullRequest
8 голосов
/ 11 марта 2012

Скажем, у меня есть название модели, сохраненное в переменной:

"#{class_name.singularize}"

с другого контроллера. Я хочу увидеть столбцы, определенные для этой модели. Я пытался

send("#{class_name.singularize}.columns")

но он пытается вызвать Page.columns как метод класса, в котором я сейчас работаю, а не класса Page. Есть идеи как это сделать?

1 Ответ

13 голосов
/ 11 марта 2012

Использование constantize:

class_name.singularize.constantize.columns
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...