Я работаю над созданием сетки элементов заказа клиента в Magento 1.7. Для этого я создал новое подменю в меню «Продажи» для администратора. В таблице параметров заказа будет отображаться каждый продукт, заказанный в новой строке. Следовательно, в сетке может присутствовать несколько OrderIds. Мой запрос в классе сетки является:Создание элемента Item Item в Magento
$collection = Mage::getResourceModel('sales/order_collection')
->join(
'sales/order_item',
'`sales/order_item`.order_id=`main_table`.entity_id',
array(
'skus' => `sales/order_item`.`sku`,
'names' => `sales/order_item`.`name`,
'order_incharge' => `sales/order_item`.`order_incharge` ,
'proptions' => `sales/order_item`.`product_options` ,
));
У меня нет какой-либо пункт GroupBy. Когда я печатаю этот запрос в журнале, он выглядит как:
SELECT `main_table`.* FROM `sales_flat_order` AS `main_table` INNER JOIN `sales_flat_order_item` AS `sales/order_item` ON `sales/order_item`.order_id=`main_table`.entity_id
У меня есть 2 заказа в моей базе данных. Идентификатор заказа = 24 имеет два продукта Идентификатор заказа 25 имеет один продукт Таким образом, приведенный выше запрос при запуске в базе данных правильно отображает 3 записи. Однако это не отображается на сетке. Я получаю следующее сообщение об ошибке при попытке отобразить в сетке:
Item (Mage_Sales_Model_Order) with the same id "24" already exist";i:1;s:4274:"#0 C:\wamp\www\bakery\lib\Varien\Data\Collection\Db.php(576): Varien_Data_Collection->addItem(Object(Mage_Sales_Model_Order))
Как решить эту проблему, так что тот же самый идентификатор заказа может быть добавлен в коллекцию?
Спасибо, Неет
Это не дает ответа на вопрос. Чтобы критиковать или просить разъяснения у автора, оставьте комментарий ниже их сообщения. – Tala
Это ответ. Это просто сказано. –
Привет, Маршалл, Спасибо за ваш совет. Он отлично работал, получив sales/order_item_collection. – neetw