Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Chaves nas Collections

Olá Vinicius,

Na documentação do ArrayCollection tem o método set() que permite inserir chaves na minha coleção. Caso eu precise inserir chaves em minha coleção como irei recuperar os objetos da coleção com essas chaves, visto que essas chaves não ficam guardadas no banco?

Estou criando uma modelagem própria com o Doctrine para exercitar o que foi aprendido e me deparei com este problema.

2 respostas
solução!

Fala, Diego. Beleza?

A chave que você setar não vai pro banco não. É o mesmo que fazer:

$array = [];
$array[7] = 'Valor';

Se você fizer um foreach, apenas um valor será encontrado. Quando você manda um ArrayCollection pra ser salvo, apenas os valores lá encontrados serão enviados.

A chave pode ser usada caso o índice da coleção tenha algum significado, mas isso não tem relação com o banco de dados. :-)

Não sei se a explicação ficou muito clara... rsrs

Oi Vinicius, então, acho que expressei super mal a minha dúvida.

As chaves não vão para o banco até por quê não tem como guarda-las já que não tem relação com a modelagem, no fundo o que queria perguntar é se tem alguma forma de armazenar um ArrayCollection no banco de dados ou o estado dos objetos, mas depois vi que o problema estava na minha modelagem, não estava pensando direito. De qualquer forma obrigado!