모듈: Mongoid::Touchable

확장자:
터치 가능
포함 항목:
터치 가능
다음에 정의됨:
lib/mongoid/contactable.rb

개요

문서의 타임스탬프를 원자적으로 업데이트 하는 '터치' 기능을 추가하기 위해 Mongoid::Document에 포함된 Mixin 모듈입니다.

네임스페이스 아래에 정의됨

모듈: InstanceMethods

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#정의_터치 가능!(association) ⇒ 클래스

터치 옵션이 제공된 경우 터치 가능한 연결에 연결을 추가합니다.

예시:

터치 가능 항목을 추가합니다.

Model.define_touchable!(assoc)

매개변수:

반환합니다:

  • (클래스)

    모델 클래스입니다.



153
154
155
156
157
158
159
160
161
162
163
164
# 파일 'lib/mongoid/contactable.rb', 줄 153

def 정의_터치 가능!(연관 관계)
  이름 = 연관 관계.이름
  메서드 이름 = 정의_관계_터치_메서드(이름, 연관 관계)
  연관 관계.inverse_class. do |class|
    class.after_save 메서드 이름
    class.after_destory 메서드 이름

    # 내장된 Docs 는 다음 내에서 터치 업데이트를 재귀적으로 처리하다 합니다.
    # #터치 메서드 자체
    class.after_터치 메서드 이름 하지 않는 한 연관 관계.임베디드?
  end
end

#억제 _터치_콜백(이름) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

연결된 차단 기간 동안 명명된 클래스에 대한 터치 콜백을 억제합니다.



170
171
172
173
174
175
# 파일 'lib/mongoid/contactable.rb', 줄 170

def 억제_터치_콜백(이름)
  저장, 터치 콜백_상태[이름] = 터치 콜백_상태[이름], true
  yield
보장
  터치 콜백_상태[이름] = 저장
end

#Touch_callbacks_suppressed?(name) ⇒ true | false

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

명명된 클래스에 대해 터치 콜백이 억제되는지 여부를 쿼리합니다.

반환합니다:

  • (true | false)

    터치 콜백을 억제할지 여부입니다.



183
184
185
# 파일 'lib/mongoid/contactable.rb', 줄 183

def Touch_callbacks_suppressed?(이름)
  터치 콜백_상태[이름]
end