【发布时间】:2011-08-02 11:48:05
【问题描述】:
我有一个数组对象,它是数据库中 magento fetchall 的输出,我希望将其转换为 Collections 类的对象,以便我可以实现分页并使用此集合与其他表连接。你能帮帮我吗?卡了好久!!
【问题讨论】:
标签: magento
我有一个数组对象,它是数据库中 magento fetchall 的输出,我希望将其转换为 Collections 类的对象,以便我可以实现分页并使用此集合与其他表连接。你能帮帮我吗?卡了好久!!
【问题讨论】:
标签: magento
为了将数组转换为集合对象:
1> 创建 Varien_Db_Collection 的实例
$collection = new Varien_Data_Collection();
2> 创建 Varien_Object 的实例并设置数组数据
$rowObj = new Varien_Object();
$rowObj->setData($row);
3> 最后将 Varien_Object 添加到 Collection 实例中
$collection->addItem($rowObj);
4> 现在 $collection 是一个集合对象。
【讨论】:
Varien_Db_Collection。我收到此错误Fatal error: Class 'Varien_Db_Collection' not found
Varien_Data_Collection_Db 时遇到了奇怪的错误,但 Varien_Data_Collection 在此答案中发布的代码可以正常工作
Magento 没有内置的转换器,但您可以使用 Collections 编写查询,或根据数组中的所有 id 加载 Collection。
【讨论】:
此外,可以使用addItem 方法填充集合。
【讨论】:
$collection->addItem($item) 以添加到集合中。
$collection是哪个类对象?
如果你有一组 ids $product_ids,你可以使用:
$collection = Mage::getModel('catalog/product')->getCollection()
->addIdFilter($product_ids);
【讨论】: