모듈: Mongoid::Equality

확장자:
ActiveSupport::Concern
포함 항목:
컴포저블
다음에 정의됨:
lib/mongoid/equality.rb

개요

이 모듈에는 Mongoid의 문서 복제/복제 동작이 포함되어 있습니다.

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

모듈: 클래스 메서드

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#<=>(기타) ⇒ 정수

기본 비교는 string 의 버전을 통해 ID 이루어집니다.

예시:

두 문서를 비교합니다.

person <=> other_person

매개변수:

  • 기타 (문서)

    비교할 문서입니다.

반환합니다:

  • (정수)

    -1, 0, 1.

[소스 보기]

20
21
22
23
# 파일 'lib/mongoid/equality.rb', 20줄

def <=>(기타)
  반환 super 하지 않는 한 기타.is_a?(몽고이드::동등성)
  속성["_id"].to_s <=> 기타.속성["_id"].to_s
end

#==(기타) ⇒ true | false

문서 ID에 대해 동등성 검사를 수행합니다. 보다 강력한 동등성 검사를 수행하려면 이 메서드를 재정의하세요.

예시:

동일한지 비교합니다.

document == other

매개변수:

  • 기타 (문서 | 객체)

    비교할 다른 객체입니다.

반환합니다:

  • (true | false)

    ID가 같으면 true, 같지 않으면 false입니다.

[소스 보기]

34
35
36
37
# 파일 'lib/mongoid/equality.rb', 34줄

def ==(기타)
  self.클래스 == 기타.클래스 &&
      속성["_id"] == 기타.속성["_id"]
end

#eql?(기타) ⇒ true | false

==에 위임합니다. 해시를 확인해야 할 때 사용됩니다.

예시:

동등성 검사를 수행합니다.

document.eql?(other)

매개변수:

  • 기타 (문서 | 객체)

    확인할 객체입니다.

반환합니다:

  • (true | false)

    같으면 참, 같지 않으면 거짓.

[소스 보기]

47
48
49
# 파일 'lib/mongoid/equality.rb', 47줄

def eql?(기타)
  self == (기타)
end