"softdelete"를 사용하시겠습니까? 파트 2

Na deste artigo, criamos o projeto, os métodos para listar registros e as 각각의 회전.

Nesta segunda parte, vamos implementar os métodos para deletar, restaurar e Consultar modelos deletados.


삭제 등록



컨트롤러를 처음부터 끝까지 편집하고 등록 방법을 포함합니다.

public function deleteInvoiceById($id)
{
    $invoice = Invoice::find($id);

    if ($invoice) {
        $invoice->delete();
        return response()->json(['message' => 'Invoice '.$id.' successfully deleted']);
    } else {
        return response(['message' => 'Invoice not found'], 404);
    }
}



Explicando o código, primeiro verificamos se o registro existe e, se existir procedemos à deleção retornando uma mensagem personalizada.

등록 정보가 등록되지 않은 상태로 존재합니다.

Em seguida adicionamos uma nova rota no arquivo '\route\api.php' para acessar o metodo criado na controller.

Route::delete('/{id}/delete', 'deleteInvoiceById');


Agora vamos testar aplicação fazendo uma requisição para rota que deleta o registro passado como parâmetro.

Se tudo estiver certo, veremos uma mensagem semelhante à esta 로고 abaixo.



Acessando novamente a rota que traz todos os registros veremos algo parecido com isto:



E acessando a rota para trazer um registro específico teremos o seguinte retorno:




Restaurando registros deletados



Continuando com o projeto iremos implementar agora um método para restaurar registros deletados...

public function restoreInvoiceById($id)
{
    $invoice = Invoice::onlyTrashed()->find($id);

    if ($invoice) {
        $invoice->restore();
        return response()->json(['message' => 'Invoice '.$id.' successfully restored']);
    } else {
        return response(['message' => 'Invoice not found'], 404);
    }
}



...e는 각각의 순서를 따릅니다.

Route::put('/{id}/restore', 'restoreInvoiceById');



Perceba a utilização do método onlyTrashed() cujo objetivo é garantir que apenas registros deletados possam ser encontrados.

Agora vamos testar a restauração do registro deletado.



Consultando todos os 등록...



...e Consultando o registro pelo id temos:




Listando registros deletados



Para concluir a segunda parte deste artigo vamos criar o método que retorna um registro deletado pelo seu id...

public function getTrashedInvoiceById($id)
{
    $invoice = Invoice::onlyTrashed()->find($id);

        if ($invoice) {
            return $invoice;
        } else {
            return response()->json(['message' => 'Invoice not found'], 401);
        }
}



...각각의 로타:

Route::get('/{id}/trashed', 'getTrashedInvoiceById');



Para testar este método acesse a rota que deleta registros qualquer id.

Logo após a deleção do registro basta acessar a rota que mostra registros deletados para obter o resultado abaixo.



"deleted_at"대부분의 데이터는 독점적인 등록 등록이라는 점에 유의하십시오.


Na deste artigo vamos desenvolver o método que fará a exclusão definitiva dos modelos.

아테 브레브.

좋은 웹페이지 즐겨찾기