Pergunta

Eu tentativa de chamar um resourceModel, no entanto, eu apenas recebe uma tela em branco e a seguinte mensagem de erro no meu log:

Aviso:incluem(Namespace/ProjectName/Model/Mysql4/Projectname.php):failed to open stream:Não existe tal arquivo ou diretório

Isto é como eu estou chamando de " acima:

Mage::getResourceModel('projectname/projectname')->uploadData();

Esta é a forma como o resourceModel é definido no config.xml:

<models>
    <projectname>
        <class>Namespace_ProjectName_Model</class>
        <resourceModel>projectname_mysql4</resourceModel>
     </projectname>
....
</model>

E, finalmente, esta é a resourceModel si:

class Cjponyparts_ProjectName_Model_Mysql4_ProjectName extends Mage_Core_Model_Mysql4_Abstract{
    ....
    function uploadData(){....}
}

O resourceModel está localizado em:

Namespace/ProjectName/Model/Mysql4/ProjectName.php

A única diferença que eu vejo que poderia causar este erro é que eu tenho a resourceModel definido como esta "ProjectName.php" enquanto procura por algo como isso "Projectname.php".É este o problema?Como posso corrigir?Fazer resourceModels precisa ser definido como a segunda opção?

Foi útil?

Solução

se você dar uma olhada na mensagem de erro

Aviso:incluem(Namespace/ProjectName/Model/Mysql4/Projectname.php):failed to open stream

Failed to open Projectname.php

Tente alterar a classe e o nome do arquivo não ser camelo-caso

Namespace/ProjectName/Model/Mysql4/Projectname.php

class Cjponyparts_ProjectName_Model_Mysql4_Projectname extends Mage_Core_Model_Mysql4_Abstract{
    ....
    function uploadData(){....}
}

Mage::getResourceModel('kitinventory/projectname')

Se você deseja manter o nome de camelo caso, tentar

Mage::getResourceModel('kitinventory/projectName')
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top