加入不在Magento中工作的集合查询

时间:2014-07-08 12:54:53

标签: php magento

我在Magento中加入Collection时遇到问题。当我回应我的查询时,有main_table而不是产品。这是我的查询和

SELECT `main_table`.*, `cat`.`name` FROM `product` AS `main_table` INNER JOIN `` AS `cat` ON product.cat_id = cat.id

使用Action名称getProductData()阻止。

public function getProductData()
{
         $collection = Mage::getModel('web/product')->getCollection();
         $collection->getSelect()->joinInner( array('cat'=>$this->getTable('web/web')), 'product.cat_id = cat.id', array('name'));
         //echo $collection->getSelect(); die;
         return $collection;
}

我需要在这个行动中改变什么?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

在集合中将product表视为main_table是正常的,但您的函数$this->getTable('web/web')未返回表名。您可以尝试使用该表的静态名称进行测试。或者使用Mage::getSingleton('core/resource')->getTableName('web/web');代替$this->getTable('web/web')