2013-12-16 64 views
0

我创建了一个新模块来在管理面板中创建一个部分。本模块部分有一个“关联产品”小节,我可以在该模块的每个项目中添加一个或多个产品。获取关联产品

我能够获得使用功能的字段值一样

  • $combo->getName()
  • $combo->getComments()

但我不能够使用,以获得相关的产品,该项目

$combo->getAssociatedProducts() 

我试过的如下:

<?php $comboCollection = Mage::getResourceSingleton('combo/combo_collection'); ?> 
<?php 
    foreach ($comboCollection as $combo) { 
     zend_debug::dump($combo->getAssociatedProducts($combo)); //giving error  
    } 
?> 

PS:这里$combo不是产品,它只是创建模块中的一个项目。

说明


enter image description here


+0

检查什么是'print_r的呈现($ combo->的getData());'。如果您没有找到associate_products命名字段,那么您的'getAssociatedProducts'将不起作用。 –

+0

是的,我看不到associate_products ..现在该怎么做? –

+0

这意味着您没有在您的组合模型/集合的相关数据库表中具有associate_products字段。因此,获取相关产品取决于您的模块,您如何在db中保存相关产品信息。你可以在你的问题中解释一下这个模块是如何工作的。 –

回答

1

考虑到你的模型/收集products为表combo_combo_product。你应该收集的产品,然后以这种方式筛选它的组合收集的电流组合ID

foreach ($comboCollection as $combo) { 
    $associatedCollection = Mage::getResourceSingleton('combo/products_collection'); 
    //$associatedCollection = Mage::getModel('combo/products')->getCollection(); 
    $associatedCollection->addFieldToFilter('combo_id',array('eq' => $combo->getId())); 
    foreach{$associatedCollection as $item){ 
     print_r($item->getData()); 
    } 
} 
+0

它们不是用逗号分隔的。检查这个屏幕截图,我显示了表'combo_combo_product'的结构。 http://i.imgur.com/3dUEDUh.png –

+0

Deependra,请帮忙.. –

+0

我已经更新了答案 –

相关问题