2009-10-27 4 views
6

개체가 무엇인지 모르는 경우 어떻게 컨트롤러 이름을 개체 밖으로 가져올 수 있습니까?컨트롤러 이름의 모델 이름

object.class.tableize 

을하지만 레일은 말한다 :

내가 할 노력하고

undefined method `tableize' for #<Class:0xb6f8ee20> 

내가 같은 결과 demodulize을 추가했습니다.

감사

의미 이유로

답변

17
object.class.to_s.tableize 
1

, 당신은 수행 할 수 있습니다 : 당신은이 순서로 tableize을 사용할 수 있습니다

object.class.name #=> 'FooBar' 

, 같은 :

object.class.name.tableize #=> 'foo_bars' 

을 내가 선호 그 방법은 가독성 때문입니다.

또한, tableize도 복수 화를 수행합니다. 원치 않는 경우 underscore을 사용하십시오.

희망이 있으면 누구나 도움이되기를 바랍니다. 오래된 스레드 인 경우에도 유용합니다.