Criando e atualizando o Laravel Eloquent

Criando e atualizando o Laravel Eloquent

Problema

Qual é a melhor e mais rápida maneira de criar um novo disco usando o Laravel Eloquent ou atualizar o registro se ele existir ?

$ user = user :: where ('organização_id', '=', $ organização_id)
-> onde ('idade', '=', 30)-> primeiro ();
if ($ user == null)
// Insira um novo registro no banco de dados
outro
// Atualize o registro existente

Solução

Incluindo o Laravel 6, houve algumas maneiras de criar e atualizar seu registro eloquente separadamente. O que você precisa aqui é um método que faz tudo isso para você. Você poderia usar o Firstornew ou FirstorCreate. A diferença é que o primeiro retorna apenas uma instância do modelo, o que significa que você tem o objeto, mas ainda não foi persistido no banco de dados. Você teria que ligar para o método salv () nele. O outro fará tudo isso para você.

$ user = user :: FirstorNew (['nome' => 'Receitas de Laravel']);
$ user-> idade = entrada :: get ('idade');
$ user-> save ();

Abaixo está o link atualizado dos documentos, que está na versão mais recente do Laravel

Documentos aqui: link atualizado