1

如何获取所有发票集合?

我知道要获得所有订单是:

 $orders = Mage::getModel(sales/order)->getCollection();

但是,我似乎无法找到发票的等价物(它不是销售/发票)。对不起,如果这是一个愚蠢的问题。

4

1 回答 1

4

您需要使用:

$orders = Mage::getModel("sales/order_invoice")->getCollection();

对于解释:

当您想在 magento 中访问 i block/model/resource/helper/etc 时:

  • 首先,您选择正确的方法来访问它:Mage::getModel对于模型

  • 其次,您必须告诉 magento 您要访问“哪个”模块。您可以使用参数字符串的第一部分来执行此操作:

Mage::getModel(" sales /order_invoice")

此字符串引用您要访问的类型或资源的 XML 节点。在您的情况下,要访问 Mage_Sales 模块的模型:查看 Mage_Sales 的 config.xml,您将看到要使用的节点(用于模型和资源模型):

[...]
<models>
    <sales><!-- <----- THIS NODE -->
        <class>Mage_Sales_Model</class>
         <resourceModel>sales_resource</resourceModel>
     </sales>
     [...]
  • 最后一部分,您需要添加对所需文件的完全访问权限,如果需要,可以使用文件夹。在你的情况下,在 Mage_Sales 模块的 Model 文件夹中(上面的 xml 配置告诉我们这个文件夹是Mage_Sales_Model),你会Invoice.phpOrder文件夹中看到一个文件:然后你的路径是“order_invoice”,访问你的模型的完整命令是:

Mage::getModel("sales/ order_invoice ")

于 2012-11-02T21:20:46.507 回答