0

全て。注文ステータスが「キャンセル」されていないデータベースからすべての注文商品を取得しようとしています。コードの一部を次に示します。

$items = Mage::getModel('sales/order_item')->getCollection();
$rents->getSelect()->join( array('sales_order'=>Mage::getSingleton('core/resource')->getTableName('sales/order')), Mage::getSingleton('core/resource')->getTableName('sales/order_item') . '.order_id = sales_order.entity_id', array('sales_order.state'));
$rents->addFilter('product_id', $productId);
$rents->addFilter('state', array('neq' => 'canceled'));

このコードを実行しようとすると、次のエラーが表示されます。

4

1 に答える 1

0

以下のコードを試して結果を求めてください。注文した製品の 1 つを試してみました。

$items = Mage::getModel('sales/order_item')->getCollection();
$items->getSelect()->join( array('sales_order'=>Mage::getSingleton('core/resource')->getTableName('sales/order')), 'main_table.order_id = sales_order.entity_id', array('sales_order.state'));
$items->getSelect()->where('product_id=?', $productId);
$items->getSelect()->where('state!=?','canceled');
echo $items->getSelect();// will print sql query
print_r($items->getData()); // will print order into array format

それが役立つことを願っています!

于 2013-10-18T13:45:51.257 に答える