Módulo: Mongoid::Persistable::Destroyable

Estendido por:
ActiveSupport::Concern
Incluído em:
Mongoid::Persistable
Definido em:
lib/mongoid/persistable/destroyable.rb

Visão geral

Define o comportamento para operações persistentes que destroem documentos.

Definido sob namespace

Módulos: Métodos de classe

Recolhimento do Resumo do método de instância

Detalhes do método de instância

#destruir(opções = nil) ➤ verdadeiro | false

Remova o documento do banco de banco de dados com as chamadas de resposta.

Exemplos:

Destruir um documento.

document.destroy

Parâmetros:

  • opções (Hash) (padrão para: nil)

    As opções.

Hash de opções (opções):

  • :persistir (verdadeiro | falso)

    Se deve persistir a ação de exclusão . Os retornos de chamada ainda serão executados, mesmo que sejam falsos.

  • :suppress (verdadeiro | falso)

    Se o documento principal deve ser atualizado na memória ao excluir um documento incorporado.

Retorna:

  • (verdadeiro | falso)

    Verdadeiro se for bem-sucedido, falso se não.

Aumenta:



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Arquivo 'lib/mongoid/persistable/destroyable.rb', linha 23

def destruir(opções = nada)
  aumentar Errors::Documento somente leitura.Novo(auto.classe) se somente leitura?
  auto.sinalizado_for_destroy = true
  Resultado = run_callbacks(:commit, skip_if: -> { in_transaction? }) fazer
    run_callbacks(:destroy) fazer
      se pegar(:abort) { apply_destroy_dependencies! }
        excluir(opções || {}).toque fazer |res|
          se res && in_transaction?
            Threaded.add_modified_document(_session, auto)
          end
        end
      mais
        false
      end
    end
  end
  auto.sinalizado_for_destroy = false
  Resultado
end

#destruir!(opções = {}) ➤ verdadeiro

Remova o documento do banco de banco de dados com as chamadas de resposta. Gera um erro se o documento não for destruído.

Exemplos:

Destruir um documento.

document.destroy!

Parâmetros:

  • opções (Hash) (padrão para: {})

    As opções.

Hash de opções (opções):

  • :persistir (verdadeiro | falso)

    Se deve persistir a ação de exclusão . Os retornos de chamada ainda serão executados, mesmo que sejam falsos.

  • :suppress (verdadeiro | falso)

    Se o documento principal deve ser atualizado na memória ao excluir um documento incorporado.

Retorna:

  • (verdadeiro)

    Sempre verdadeiro.



59
60
61
# Arquivo 'lib/mongoid/persistable/destroyable.rb', linha 59

def destrua!(opções = {})
  destruir(opções) || aumentar(Errors::DocumentNotDestroyed.Novo(_id, auto.classe))
end