Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvidas sobre atualização

Estou fazendo o curso com PHP 8.2.29, é não existe mais o método getParcialReference() somente o getReference()

Quando usei o delete aparentemente funcionou não precisei usar o find()

Qual método seria o recomendado?

1 resposta
solução!

Oi Lucas! Como vai?

A diferença entre eles é que o getParcialReference() era utilizado para criar uma referência parcial de uma entidade, ou seja, sem carregar todos os dados do banco de dados, o que poderia ser útil em operações onde não era necessário ter todos os detalhes da entidade. No entanto, esse método foi removido em versões mais recentes do Doctrine.

O método getReference() é o recomendado atualmente. Ele cria uma referência à entidade sem realmente carregá-la do banco de dados, mas ainda permite que você interaja com ela como se estivesse carregada, o que é útil para operações como deletar ou atualizar, onde você não precisa dos dados completos da entidade.

Seu teste com o método de deleção funcionou porque o getReference() é suficiente para que o Doctrine saiba qual entidade precisa ser removida, sem precisar carregar todos os dados dela. Isso pode ser especialmente útil para manter a performance do seu aplicativo.

Em resumo, o uso do getReference() é adequado para a maioria das operações onde você não precisa dos dados completos da entidade, como deletar ou atualizar, enquanto o find() deve ser usado quando você precisa dos dados completos da entidade.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.