2013-06-17 6 views
0

Ruby에 내 config/com/meow 위치에있는 클래스를 작성했습니다. 이렇게하면 Ruby on Rails 사용자 정의 클래스

config.autoload_paths += %W(#{config.root}/com/meow/) 

, 나는 초기화되지 않은 상수를 언급에 오류가 발생했습니다 : 내 클래스를 생성 한 후, 나는 나의 application.rb에게 config.autoload_paths 다음을 설정합니다. 나는 아마 경로가 잘못로드

생각, 나는 다음과 같은 경로를 변경 :

config.autoload_paths += Dir["#{config.root}/com/meow/"] 

이 일 후에, 나는 여전히 '상수 초기화되지 않은'같은 오류를 받았다.

제 목표는 내 사용자 정의 루비 클래스에있는 public 메소드를 참조하는 것입니다. ApplicationController에서이 방법을 참조하고 싶습니다. [클래스]. [방법] 나는이 오류를 해결하기 위해 무엇을하고 참조하기 위해해야 ​​할 무엇

에 의해 정의 된 내 ApplicationController 내부

, 나는 클래스에 대한 참조 및 방법을 내 수업에 포함 된 방법은 내 ApplicationController에서?

답변

1

나는 config.root에 대해 약간 혼란 스럽다고 생각합니다. config.root은 응용 프로그램의 루트 디렉토리이며, 보통 app/, config/, db/, ... 디렉토리가 있습니다. 당신은 자동 부하 경로에 config/com/meow을 추가하려는 경우 따라서, 당신은 싶어 :

config.autoload_paths += %W(#{config.root}/config/com/meow) 
내가 아마하지만, 그들은 표준 위치 어디에 될 것 lib/에서 사용자 정의 클래스를 던져 줄

사람들은 정상적으로 보이므로 자동로드 경로를 사용자 정의하는 것에 대해 걱정할 필요가 없습니다.

+0

감사합니다. 두 옵션 모두 작동했습니다. 나는 클래스와 lib 폴더로 옮겨서 컨벤션과 추천을 따르기로했다. 고맙습니다. –