8
내가 마이그레이션 내부의 메소드를 정의하기 위해 노력하고있어,하지만 난 정의되지 않은 방법 오류 받고 있어요 : 그것은 '아무튼 때문에,정의 방법
undefined method 'do_something_specific' for #<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x4868018>
는 차라리 다른 곳을 정의하지 않는 게 좋을을 이 응용 프로그램의 나머지 부분과 관련이 있습니다.
class DoSomethingSpectacular < ActiveRecord::Migration
def self.up
do_something_specific(1, 2)
end
def self.down
end
private
def do_something_specific(p_1, p_2)
# something happens here...
end
end
내가 여기서 뭔가를 놓치고 있습니까 :
는 명확하게하기 위해, 내 마이그레이션과 같이 보입니다? 왜 이렇게 정의 할 수 없습니까?
그래, 나는 그것이 어댑터 안에서 무엇을 부르는 지 이해하지 못했다. 그러나 나는 그것이 그것의 범위 안에 있어야한다고 생각했다. 어쨌든, 이제 클래스에 대한 정의되지 않은 메소드 'do_something_specific'오류가 발생합니다. Class –
미안합니다. 'self.up'는 정적 메서드 자체이기 때문에'class'를 호출하면'DoSomethingSpectacular'가 아닌'Class'가 반환됩니다. 샘플 코드를 업데이트했습니다. – Koraktor
'DoSomethingSpectacular'를 안전하게 제거 할 수 있다고 생각합니다. 셀프 업 – khelll