2017-09-25 3 views
0

J'appelle Mage::getModel('index/process') dans le script de mise à niveau des données et renvoie false. Si j'appelle Mage::getModel('Mage_Index_Model_Process') il renvoie l'objet mais quand j'appelle getCollection() sur cet objet cette fonction renvoie false. Qu'est-ce que je fais mal?Mage :: getModel ('index/process') renvoie false

+0

Quelle version de Magento utilisez-vous? Avez-vous apporté des modifications de base? Avez-vous effectué des modifications locales qui remplacent le noyau? Quels autres modules avez-vous installés? Avez-vous vidé votre cache? Tant de questions! –

+0

1.9, non, bien sûr, mais pas pour cette classe et il n'y a aucune modification qui remplace 'getModel', de nombreux modules écrits par notre société et d'autres, oui. –

Répondre

0

J'ai trouvé mon erreur. Je voulais ajouter des modèles à l'index dans la piscine locale. J'ai eu un tel code dans mon config.xml:

<index> 
    <class>MyModule_Index_Model</class> 
    <resourceModel>index_resource</resourceModel> 
</index> 
<index_resource> 
    <class>MyModule_Index_Model_Resource</class> 
    <entities> 
     <process_store_status> 
      <table>mymodule_index_process_store_status</table> 
     </process_store_status> 
    </entities> 
</index_resource> 

Et maintenant la recherche Magento pour la classe MyModule_Index_Model_Process au lieu de Mage_Index_Model_Process. Malgré que je n'ai pas une ligne de code pour réécrire cette classe. J'ai changé mon code à

<mymodule_index> 
    <class>MyModule_Index_Model</class> 
    <resourceModel>index_resource</resourceModel> 
</mymodule_index> 
<mymodule_index_resource> 
    <class>MyModule_Index_Model_Resource</class> 
    <entities> 
     <process_store_status> 
      <table>mymodule_index_process_store_status</table> 
     </process_store_status> 
    </entities> 
</mymodule_index_resource> 

Maintenant tout fonctionne bien.