【问题标题】:Magento 1.7.0.2 collect and extract order status state [closed]Magento 1.7.0.2 收集和提取订单状态 [关闭]
【发布时间】:2013-01-25 15:44:36
【问题描述】:

我到处搜索,但找不到有效的答案。

如何获取所有销售/订单状态_状态的集合。一个使用 ResourceModel 还是一个简单的 Model ?

谢谢

【问题讨论】:

    标签: magento state status ecommerce-sales


    【解决方案1】:

    你可以使用

    $collection = Mage::getResourceModel( 'sales/order_status_collection' )->joinStates();
    

    $collection = Mage::getSingleton( 'sales/order_status' )->getCollection()->joinStates();
    $collection = Mage::getModel( 'sales/order_status' )->getCollection()->joinStates();
    

    它们都返回一个集合,但第一个直接返回集合,单例版本使用单例,因此两次调用同一模型的 getSingleton 只会创建一个类实例,然后创建一个新集合,而 getModel 版本将两次调用创建两个不同的模型,然后以与 getSingelton 版本相同的方式创建集合。

    所以区别只在于它在返回集合之前创建了多少类的开销。

    您无法直接使用“sales/order_status_state”,因为它的模型、资源模型和集合不存在 - 状态通过 joinStates() 函数加入状态集合。

    【讨论】:

    • 我试过这个和exception 'Exception' with message 'Warning: include(Mage/Sales/Model/Order/Status/State.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in /home/hdmpt/public_html/gtdev/fresh/lib/Varien/Autoload.php on line 93' in /home/hdmpt/public_html/gtdev/fresh/app/code/core/Mage/Core/functions.php:245
    • 你是对的。我已经相应地修改了答案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-17
    • 2014-09-06
    • 1970-01-01
    • 2012-01-08
    • 1970-01-01
    相关资源
    最近更新 更多