2
ROR의 모범 사례를 살펴 보았습니다. 콜백 메서드가 개인 대신 보호 된 섹션에 선언 된 것을 확인했습니다. 나는 콜백 메소드를 선언 할 때 항상 프라이빗을 사용했기 때문에 보호 된 것을 사용하는 것이 더 나은지 궁금하다. 이 구현에 상당한 차이가 있습니까?ROR에서 콜백 메소드를 Private 또는 Protected로 선언 할 때?
ROR의 모범 사례를 살펴 보았습니다. 콜백 메서드가 개인 대신 보호 된 섹션에 선언 된 것을 확인했습니다. 나는 콜백 메소드를 선언 할 때 항상 프라이빗을 사용했기 때문에 보호 된 것을 사용하는 것이 더 나은지 궁금하다. 이 구현에 상당한 차이가 있습니까?ROR에서 콜백 메소드를 Private 또는 Protected로 선언 할 때?
private
- 정의 된 클래스 내에서만 액세스 할 수 있습니다.
protected
- 클래스를 정의하는 클래스 및 해당 클래스를 상속하는 다른 클래스에서 액세스 할 수 있습니다.
사실 그렇지만 ROR 컨텍스트 내에서이 효과를 묻습니다. – Dagosi
콜백을'protected'로 정의하면 클래스의 서브 클래스에서 콜백을 사용할 수 있습니다. 모델을 서브 클래스 화 한 다음 개인용으로 남겨 둘 가능성은없는 것 같네요. –
protected를 사용할 때도 같은 오류가 발생합니다. 부모 레벨에서 정의 된 STI 콜백에 대해 public을 사용해야한다고 가정합니다. – justingordon