모듈: Mongoid::Persistable::Updatetable

포함 항목:
Mongoid::Persistable
다음에 정의됨:
lib/mongoid/persistable/updatable.rb

개요

기존 문서를 업데이트 하는 지속성 작업의 동작을 정의합니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#업데이트(attributes = {}) ⇒ true | false 라고도 함: update_attributes

데이터베이스에서 문서 속성을 업데이트합니다.

예시:

문서 속성 업데이트

document.update(:title => "Sir")

매개변수:

  • 속성 (해시) (기본값: {})

    업데이트할 속성입니다.

반환합니다:

  • (true | false)

    유효성 검사 가 통과되면 true이고, 그렇지 않으면 false입니다.



40
41
42
43
# 파일 'lib/mongoid/persistable/updatable.rb', 줄 40

def update(속성 = {})
  Assign_attributes(속성)
  저장
end

#업데이트!(attributes = {}) ⇒ true | false 라고도 함: update_attributes!

데이터베이스의 문서 속성을 업데이트하고 유효성 검사에 실패하면 오류가 발생합니다.

예시:

문서의 속성을 업데이트합니다.

document.update!(:title => "Sir")

매개변수:

  • 속성 (해시) (기본값: {})

    업데이트할 속성입니다.

반환합니다:

  • (true | false)

    유효성 검사 가 통과되면 참입니다.

다음을 발생시킵니다.

  • (Errors::Validations)

    유효성 검사 에 실패한 경우.

  • (Errors::Callbacks)

    콜백 이 false를 반환하는 경우.



58
59
60
61
62
63
64
65
# 파일 'lib/mongoid/persistable/updatable.rb', 줄 58

def update!(속성 = {})
  결과 = update_attributes(속성)
  하지 않는 한 결과
    fail_due_to_validation! 하지 않는 한 errors.비어 있나요?
    fail_due_to_callback!(:update_attributes!)
  end
  결과
end

#update_attribute(이름, 값) ⇒ true | false

단일 속성을 업데이트하고 전체 문서 를 유지합니다. 이렇게 하면 유효성 검사 를 건너뛰지만 콜백이 실행됩니다.

예시:

속성을 업데이트합니다.

person.update_attribute(:title, "Sir")

매개변수:

  • 이름 (기호 | string)

    속성의 이름입니다.

  • value (객체)

    attribute.a의 새 값

반환합니다:

  • (true | false)

    저장에 성공적인 하면 true 이고, 실패하면 false 를 반환합니다.

다음을 발생시킵니다.



24
25
26
27
28
29
30
# 파일 'lib/mongoid/persistable/updatable.rb', 줄 24

def update_attribute(이름, value)
  as_writable_attribute!(이름, value) do |액세스|
    정규화 = 이름.to_s
    process_attribute(정규화, value)
    저장(유효성 검사: 거짓)
  end
end