Rileva ID predefinito set di attributi
-
16-10-2019 - |
Domanda
C'è set di attributi 'Default' nell'installazione di default di Magento. Tu non hai la capacità di rimuovere quel set di attributi tramite interfaccia grafica di amministrazione (pulsante Rimuovi è nascosto per questo set). Non ho trovato qualcosa come flag di sistema o di altre singolarità per questo set in eav_attribute_set. Ho bisogno di una capacità di rilevare questo attributo id del set di programmazione in diverse installazioni. Forse qualcuno di fronte a compiti come questo e mi potrebbe dare l'indizio. Grazie
Soluzione
Questo dovrebbe darvi quello che vi serve:
Mage::getModel('catalog/product')->getDefaultAttributeSetId();
Ulteriori informazioni:
Il set id attributo predefinito viene memorizzato nella eav_entity_type
tabella per ogni entità. Le entità di vendita collegate hanno questo set a 0, perché sono memorizzate nelle tabelle piatte ora. Ma prima ce-1.4.0.1 erano EAV anche e aveva un set di attributi.
Altri suggerimenti
Una risposta migliore sarebbe questo:
Mage::getModel('my_module/my_entity')->getResource()->getEntityType()->getDefaultAttributeSetId();
La risposta di Marius è anche un bene, ma funziona solo per i prodotti e non per i modelli EAV personalizzato potrebbe essere creato.
La mia risposta funziona per tutti i tipi di EAV, compresi quelli personalizzati.