코드 스쿨 레일 테스트 과정을보고 있습니다. 클래스 zombie
의 인스턴스가 있습니다. zombie
모델은 방법이있다 : 내가 전화 한 경우레일 컨트롤러/모델 방법
z.avatar_url
- 나는이 같은 메서드를 호출하는 방법 레일 구별 않습니다 테스트 내
def avatar_url ... end
을
.rb
파일은 다음있다 컨트롤러 또는 모델 방법? 나는 컨트롤러가 아닌 다른 모델의 메소드를 호출하는 것을 생각하지 않았으며Model.method
과 같고object.method
이 아닙니다. - 내 컨트롤러와 모델에 같은 이름의 메소드가있는 경우 Rails에서 호출 할 수있는 방법을 어떻게 알 수 있습니까?
업데이트 :
바로,이 모델이 아닌 예를 들어 String 클래스를 취할 수 있습니다?
그래서 내가 말할 수 :
s = String.new
s.capitalize
을이 호출이 모델로 이동하지 않고 컨트롤러에, 어디 그 다음 가지 않는하지 않으면? String과 같은 클래스는 Rails 디렉토리에 어디에 정의되어 있습니까?
obj.class를 호출 할 수 있습니다. 'String.class'을 사용하여 상속받은 것을 확인하십시오. '.class'를 계속 추가하여 기본 'Class' 클래스로 돌아갈 수 있습니다. –
팁 주셔서 감사합니다. 레일 폴더에서 사용자 정의 클래스를 정의하는 위치는 어디입니까? – Linus
커스텀 클래스는'/ app'에있는 모델이나 다른 것들에 의존하지 않는 한'/ lib'에 있습니다. –