Saiba um pouco mais sobre como funciona a modelagem de dados do Opencart
Oi pessoal, tudo bom? Terça-feira dia de colocar a mão na massa e falar de desenvolvimento na prática.
Como prometi na semana passada hoje vou continuar a falar pra vocês sobre a estrutura da plataforma de e-commerce Opencart, mais especificamente sobre sua modelagem de dados.
Ah, antes de mais nada vale lembrar que estamos falando de uma base de dados construída em cima de um MySql.
Muitas tabelas e um pouco de confusão…
Em sua instalação padrão, na versão 1.5.1, o Opencart conta de saída com absurdas 89 tabelas, o que na minha opinião é um exagero, acaba sendo meio comum quando comparado com outras plataformas do mesmo gênero como o Magento.
Analisando mais a fundo a modelagem dos dados podemos identificar alguns grupos de tabelas, principalmente pelo prefixo utilizado no nome das mesmas, as principais são.
- attribute_…
Resposável pelos atributos de um produtos, coisas que não tem relação com a grade ou estoque e sim características do mesmo.
- banner_…
Auto explicativo, porém agrupa banners utilizados em diversos módulos que veremos mais a frente
- category_…
Controla a árvore de categorias e posterior navegação da loja
- customer_…
Agrupa “quase” todos os dados do cliente da loja, já que o endereço fica em uma tabela avulsa chamada Address
- information_…
Resposável pelas páginas de conteúdo do site, seria algo como posts em um CMS como o WordPress
- option_…
Agrupa informações que afetam o estoque da loja, ou seja Tamanho, Voltagem etc ficam aqui
- product_…
Auto explicativo, um grupo gigante de 16 tabelas é responsável por gerir os produtos no sistema
- return_…
Grupo resposável pelo gerenciamento de seolicitações de troca
Muita coisa né?
Ainda existem outros grupos menores e menos relevantes, mas creio que vendo essa quantidade de grupos e tabelas você já consiga ter uma idéia da complexidade, nem sempre necessária, dessa base de dados.
Toda essa quantidade de tabelas é trabalhada quase que de maneira artesanal pelas models do sistema que como já disse na semana passada são duplicadas entre a loja e o sistema administrativo, pois p sistema nnao usa nenhum framework para encapsulamento das consultas ou dos dados.
Bom, imagino que ja é bastante informação por hoje, na terça que vem vou continuar a falar pra vocês de Opencart abordando dessa vez o funcionamento do VQmod, um conceito que é a salvação do desenvolvedor frente a pouca otimização do sistema.
Abraço e até semana que vem!