【问题标题】:Get Magento defined values for model "sales/order" status获取模型“销售/订单”状态的 Magento 定义值
【发布时间】:2013-08-14 02:49:26
【问题描述】:

如果订单的状态/状态为“处理中”,我正在尝试对订单执行一些操作(不确定我是否应该在此处使用statusstate .. 对此的任何帮助也会很棒)。

sales/order 模型上运行->getStatus() 告诉我我正在寻找的值是“处理”,但我不想将它与字符串文字进行比较。我想将它与 Magento 定义的值进行比较,所以我想知道它是如何确定这个值“处理”的,我该怎么做呢?

这是一些代码..

$order = Mage::getModel('sales/order')->loadByIncrementId($orderID);
if($order->getStatus() == "processing") {
  //do stuff
}

我想将"processing" 更改为Mage::getModel('sales/order')->STATUS_PROCESSING 之类的东西

我确定答案在 Mage_Sales_Model_Order::getStatus() 方法中的某个地方,但我很难找到该方法。我什至用ReflectionClass查看方法并没有看到它!

【问题讨论】:

  • 我不知道你在找什么,但我是这样做的:if ($order->getStatus() === Mage_Sales_Model_Order::STATE_PROCESSING)

标签: magento class-method magento-1.13


【解决方案1】:

以下代码将脱离 Magento 状态代码:

$orders = Mage::getModel('sales/order')->getCollection()
    ->addFieldToFilter('status', 'Processing')
    ;

foreach ($orders as $order) {
    //do stuff
}

我希望这就是你要找的。​​p>

【讨论】:

    猜你喜欢
    • 2018-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-01
    • 2021-10-04
    相关资源
    最近更新 更多