Доступ к нескольким таблицам в пользовательском модуле - PullRequest
1 голос
/ 24 февраля 2012

Я новичок в Magento.Мне нужны две таблицы в моем пользовательском модуле, и я должен загрузить две таблицы как отдельную коллекцию, т.е. Mage::getModel('mymodule/model1')->getcollection() и Mage::getModel('mymodule/model2')->getcollection()

Я перешел по ссылке, размещенной здесь Magento - возможно иметь несколькотаблицы для одной модели? но я застрял.Я создал два класса моделей "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>

Ответы [ 2 ]

0 голосов
/ 24 февраля 2012

У вас есть только один модуль, поэтому требуется только одно объявление модуля:

<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>

Здесь несколько моделей в одном списке модуля entities.

0 голосов
/ 24 февраля 2012

Не могли бы вы попробовать это:

<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>
...