[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Camila dos Santos Barbosa
Criador Camila dos Santos Barbosa 01/05/2019

Olá Carlos!

Estou fazendo o modelo conforme essa aula para criar o banco de dados do tenant. Eu havia escrito errado o nome da classe DatabaseManager, daí ocorreu um erro na criação do banco de dados e não fez, porém inseriu o registro de cadastro da company. Como podemos fazer para não gravar o registro do cadastro se não conseguir criar o banco?

Manager Carlos Ferreira 01/05/2019

Olá, Camila!
Tudo bem?

No Listener CreateCompanyDatabase onde validamos se criou ou não o database, você pode fazer um rollback da query que foi inserida. Ou seja, deletar o registro. Assim:
public function handle(CompanyCreated $event)
{
    $company = $event->company();
   
    if (!$this->database->createDatabase($company)) {
        // Deleta o registro
        $company->delete();

        throw new \Exception('Error create database');
    }

    // run migrations
    event(new DatabaseCreated($company));
}

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!