默认情况下,EAV Collection不会包含所有的对象属性。可以通过addAttributeToSelect()方法添加选取的属性。
但是呢,即使你通过此方法查询EAV属性的数据
$collection=Mage::getModel('customer/customer')->getCollection()->addAttributeToSelect('*')->getData();
你会发现这样做获取的仅仅是EAV主表(非键值对排列的表)的数据,那么如何获取到EAV实体的所有属性数据呢?
通过实践发现下边的方案是能够返回实体的所有属性值。
public function getCustomerData(){
$collection=Mage::getModel('customer/customer')->getCollection()->addAttributeToSelect('*');
$data = array();
foreach ($collection as $customer) {
$data = $customer->toArray();
}
return $data;
}
本文介绍了一种在Magento中获取EAV实体所有属性值的有效方法。通过使用addAttributeToSelect('*')方法并结合toArray()函数,可以确保从EAV模型中完整地提取所有属性数据。
617

被折叠的 条评论
为什么被折叠?



