简体   繁体   English

未加载模型的magento集合

[英]magento collection of a model isnt loaded

I want to load a model called Repository in my code. 我想在代码中加载一个名为Repository的模型。 The data is inserted correctly in db by model script, primary key is set to 'repository_id'. 通过模型脚本将数据正确插入db中,主键设置为“ repository_id”。 However, I am not able to read my data, so I might have a problem but I don't see where. 但是,我无法读取数据,因此可能有问题,但看不到哪里。 Call : 致电:

 $repos = Mage::getModel('Module/repository')->getCollection();
    var_dump($repos); // bool false
    $repos = Mage::getResourceModel('Module/repository_collection');
    var_dump($repos); // bool false

        $repos = Mage::getModel('Module/repository')->getResourceCollection(); // error Mage registry key "_resource_singleton/Module/repository" already exists
        var_dump($repos); 

app/code/local/Company/Module/Model/Mysql4/Resource/Repository/Collection.php 应用程序/代码/本地/公司/模块/模型/Mysql4/Resource/Repository/Collection.php

class Company_Module_Model_Resource_Repository_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
{
    public function _construct()
    {
        $this->_init('Module/repository');
    }

}

app/code/local/Company/Module/Model/Mysql4/Resource/Repository.php 应用程序/代码/本地/公司/模块/模型/Mysql4/Resource/Repository.php

class Company_Module_Model_Resource_Repository extends Mage_Core_Model_Mysql4_Abstract
{
    protected function _construct()
    {
        $this->_init('Module/repository', 'repository_id');
    }

}

app/code/local/Company/Module/Model/Repository.php 应用程序/代码/本地/公司/模块/模型/Repository.php

class Company_Module_Model_Repository extends Mage_Core_Model_Abstract
{

    public function _construct()
    {
        $this->_init('Module/repository');
    }


}

app/code/local/Company/Module/etc/config.xml 应用程序/代码/本地/公司/模块/etc/config.xml

<config>
    <global>
        <models>
            <Module>
                <class>Company_Module_Model</class>
                <resourceModel>company_module_resource</resourceModel>
            </Module>
            <company_module_resource>
                <class>Company_Module_Model_Resource</class>
                <entities>
                    <repository>
                        <table>company_repository</table>
                    </repository>
                </entities>
            </company_module_resource>
        </models>
    </global>
</config> 

Edit : I forgot to mention that i am on magento 1.4, thats why i use mysql4 ressources. 编辑:我忘了提到我在magento 1.4,这就是为什么我使用mysql4 ressources。 Thanks 谢谢

You forgot Mysql4 in you classes names. 您在类名称中忘记了Mysql4
Config: 配置:

        <company_module_resource>
            <class>Company_Module_Model_Mysql4_Resource</class>
            <entities>
                <repository>
                    <table>company_repository</table>
                </repository>
            </entities>
        </company_module_resource>

Models: 楷模:

    Company_Module_Model_Mysql4_Resource_Repository_Collection
    Company_Module_Model_Mysql4_Resource_Repository

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM