Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 自定义模块中的多表访问_Database_Magento_Entity Attribute Value - Fatal编程技术网

Database 自定义模块中的多表访问

Database 自定义模块中的多表访问,database,magento,entity-attribute-value,Database,Magento,Entity Attribute Value,我是马根托的新手。我的自定义模块中需要两个表,我必须将两个表作为单独的集合加载,即Mage::getModel('mymodule/model1')->getcollection()和Mage::getModel('mymodule/model2')->getcollection() 我已经关注了这里发布的链接,但是我被卡住了。我创建了两个模型类“model1”和“model2”,并在“mysql4”下创建了相同的模型,我的第一个模型工作得很好,但如果我访问了第二个模型,它就不工作了 如何在单个

我是马根托的新手。我的自定义模块中需要两个表,我必须将两个表作为单独的集合加载,即
Mage::getModel('mymodule/model1')->getcollection()
Mage::getModel('mymodule/model2')->getcollection()

我已经关注了这里发布的链接,但是我被卡住了。我创建了两个模型类“model1”和“model2”,并在“mysql4”下创建了相同的模型,我的第一个模型工作得很好,但如果我访问了第二个模型,它就不工作了

如何在单个模块中使用多个表?
提前谢谢


这是我的config.xml

<models>
    <module>
        <class>Package_Module_Model</class>
        <resourceModel>module_mysql4</resourceModel>
    </module>
    <module_type1>
        <class>Package_Module_Model_Type1</class>
        <resourceModel>module_mysql4</resourceModel>
    </module_type1>
    <module_mysql4>
        <class>Package_Module_Model_Mysql4</class>
        <entities>
            <module>
                <table>table1</table>
            </module>
            <module_type1>
                <table>table2</table>
            </module_type1>
        </entities>
    </module_mysql4>

包模块模型
模块_mysql4
包\模块\型号\类型1
模块_mysql4
包\模块\模型\ Mysql4
表1
表2

你能试试这个吗:

<models> 
    <module> 
        <class>Package_Module_Model</class> 
        <resourceModel>module_mysql4</resourceModel>
    </module>
    <module_type1> 
        <class>Package_Module_Model_Type1</class> 
        <resourceModel>module_mysql4_type1</resourceModel> 
    </module_type1> 
    <module_mysql4> 
        <class>Package_Module_Model_Mysql4</class> 
        <entities> 
            <module> 
                <table>table1</table> 
            </module> 
        </entities> 
    </module_mysql4> 
    <module_mysql4_type1> 
        <class>Package_Module_Model_Mysql4_Type1</class> 
        <entities> 
            <module_type1> 
                <table>table2</table> 
            </module_type1> 
        </entities> 
    </module_mysql4_type1> 
</models>

包模块模型
模块_mysql4
包\模块\型号\类型1
模块\u mysql4\u类型1
包\模块\模型\ Mysql4
表1
软件包\模块\型号\ Mysql4\类型1
表2

您只有一个模块,因此只需要一个模块声明:

<models>
    <module>
        <class>Package_Module_Model</class>
        <resourceModel>module_mysql4</resourceModel>
    </module>
    <module_mysql4>
        <class>Package_Module_Model_Mysql4</class>
        <entities>
            <model1>
                <table>table1</table>
            </model1>
            <model2>
                <table>table2</table>
            </model2>
        </entities>
    </module_mysql4>
</models>

包模块模型
模块_mysql4
包\模块\模型\ Mysql4
表1
表2

在单个模块的
实体
列表中有多个模型

是,当然。您在模型的_init方法中使用了什么?我认为您在资源模型或其调用$this->_init('mymodule/model2')中遇到了问题;我在mysql4文件夹下创建了第二个资源模型,那么资源模型中的init方法呢?