Atributos estáticos são atributos armazenados na tabela principal de uma entidade - para produtos de catálogo catalog_product_entity
,. Por exemplo, o atributo sku
de produtos de catálogo é definido como static
. Os atributos estáticos são sempre carregados pelo Magento e são úteis especialmente se você deseja recuperar informações rapidamente ou otimizar a pesquisa de dados. Uma desvantagem desse tipo de atributo é que você não pode ter valores específicos da loja, o que é uma das vantagens do sistema Magento EAV.
Mesmo se você definir um atributo como static
, o Magento não o tratará como tal, a menos que você tenha uma coluna correspondente na tabela principal de entidades. Se a coluna não estiver lá, o Magento tratará o atributo como varchar
padrão e o procurará na tabela varchar EAV para o modelo - para produtos catalog_product_entity_varchar
,.
Se você deseja usar atributos estáticos em seu projeto, é necessário fazer duas coisas nos scripts de instalação / atualização. Primeiro, você precisa adicionar uma coluna à tabela de entidades principal, com a definição de coluna correta. Em seguida, você precisa instalar seu atributo usando o addAttribute()
método e definir seu atributo como static
. Consulte os scripts de instalação Mage_Catalog
para entender melhor como as coisas funcionam neste caso.
Se você planeja executar consultas frequentemente com base em seus atributos estáticos personalizados, considere adicionar um índice na nova coluna para acelerar a busca de dados.