[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Vinicius  Silva
Criador Vinicius Silva 08/04/2021

Professor, como produt está relacionado diretamente com product_sale, o que aconteceria no sistema se o dono da loja tentasse apagar um produto que já possui vendas cadastradas no sistema?

Manager Carlos Ferreira 08/04/2021

Olá, Vinicius!
Tudo bem?

Como nas configurações default do Laravel de configuração do banco está com:
'strict' => true,

Neste caso não vai permitir deletar o produto, vai gerar uma exception, ainda que tenha no relacionamento de tabela definido ->onDelete('cascade')

Agora, se mudar essa config e combinado com onDeleteCascade, já era, ao deletar o produto deleta todos os registros vinculados a ele (em cascata, nas tabelas mais fracas, como product_sale => que no curso nomeamos de orders).

Mas, a alternativa mais correta é não permitir deletar o produto, ou seja, controlar diretamente no código (no curso mostro como fazer isso).

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

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!