【问题标题】:Magento quick getResourceModel questionMagento 快速 getResourceModel 问题
【发布时间】:2011-08-02 17:06:04
【问题描述】:

这行代码调用了什么类(如果有的话)?

Mage::getResourceModel('sales/order_invoice_collection')

基本上,我正在尝试找出使用此资源模型访问的数据库表以及如何调整它。谢谢!

【问题讨论】:

    标签: php database magento mage


    【解决方案1】:

    你要找的课程是这样的:

    Mage_Sales_Model_Mysql4_Order_Invoice_Collection
    

    位于app/code/core/Mage/Sales/Model/Mysql4/Order/Invoice/Collection.php

    如果你看一下销售模块app/code/core/Mage/Sales/etc/config.xml的配置,你可以看到资源模型定义中的表名:

    <config>
        <global>
            <models>
                <sales_mysql4>
                    <entities>
                        ...
                        <invoice><table>sales_flat_invoice</table></invoice>
                        ...
                    </entities>
                </sales_mysql4>
            </models>
        </global>
    </config>
    

    要了解有关 Magento 如何与数据库交互的更多信息,您应该阅读模型、资源模型和集合:

    http://www.magentocommerce.com/knowledge-base/entry/magento-for-dev-part-5-magento-models-and-orm-basics

    【讨论】:

    • 啊,我打败了它,而且格式更好。不过,配置文件的相关部分不应该是 标签吗?
    • 嗯,你说得更对,呵呵。 标记指向 标记,其中包含最终指向相关目录的 标记。
    【解决方案2】:

    试试这个来得到一个语句产生的类:

    $obj = Mage::getResourceModel('sales/order_invoice_collection');
    print get_class($obj);
    

    【讨论】:

      【解决方案3】:

      在这种情况下它正在加载

      code/Core/Mage/Sales/Model/Mysql4/Order/Invoice/Collection.php 
      

      这是类名:

      Mage_Sales_Model_Mysql4_Order_Invoice_Collection
      

      这可以通过查看 config.xml 来确定:

      code/Core/Mage/Sales/etc/config.xml. 
      

      models 标签下是销售标签,你可以从字符串斜杠前的“sales”中知道。在那里它将资源模型定义为 sales_mysql4。 所以,如果你打电话:

      Mage::getResourceModel('module/everything_else')
      

      加载的文件将是:

      Module/Model/{contents of resourceModel tag}/Everything/Else.php
      

      希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-22
        • 2014-10-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-27
        相关资源
        最近更新 更多