/ / Magento: Atributo com milhares de valores / opções - objeto, atributos, magento

Magento: Atributo com milhares de valores / opções - objeto, atributos, magento

Eu estou criando uma livraria em Magento e estou tendo problemas para descobrir a melhor maneira de lidar com os autores de um livro (que seria o produto).

O que eu tenho atualmente é um atributo chamado"autores", que é multi-select e mil [test] valores. Ainda é gerenciável, mas fica um pouco lento ao editar um produto. Além disso, ao adicionar uma opção / valor ao próprio atributo do autor, uma lista enorme é renderizada no HTML, tornando-a uma solução ineficiente.

  • Existe outra abordagem que devo seguir?
  • É possível criar um objeto Autor (entidadetipo?) que está associado a um produto através de uma tabela de junção? Se sim, alguém pode me dar uma explicação sobre como isso é feito ou me indicar uma boa documentação?
  • Se eu aceitasse a abordagem do objeto Autor, isso ainda poderia ser usado na navegação em camadas?
  • Como eu mostraria a lista de todos os livros para um único autor?

Desde já, obrigado!

PS: Estou ciente de extensões como Navegação aprimorada, mas AFAIK adiciona algo como atributos aos próprios atributos, o que não é o que eu estou procurando.

Para os Googlers: o mesmo se aplica aos artistas de um site ou fabricantes de música.

Respostas:

2 para resposta № 1

Se você criar um tipo de entidade de autor, você apenas aumentará seu trabalho tentando adicioná-lo à navegação em camadas, e não vejo uma razão pela qual seria mais rápido.

Sua abordagem parece o melhor ajuste para o problema,Dada a forma como o Magento está configurado. Como você exibirá 1.000 (que provavelmente empalidecem em comparação com a lista real) autores na navegação em camadas?

Dependendo dos requisitos, você poderia ir arota de desnormalizar o campo e aceitar texto para ele. Isso ainda permitiria exibi-lo, pesquisar com base nele, etc., mas eliminaria a necessidade de processar todos os artistas possíveis para manipular a lista. Você pode adicionar um pequeno código em torno de selecionar o artista adequado (basicamente adicionar um preenchimento automático AJAX ao campo back-end) para minimizar os erros de digitação também.

Alternativamente, você poderia escrever um utilitário simplespara adicionar um novo artista ao sistema sem alguma sobrecarga do Magento carregar a lista. Para ser honesto, parece que o atraso que isso tem o potencial de criar no frontend provavelmente supera o problema de backend.

Espero que ajude!

Obrigado, Joe