Magento中的Collection :: addAttributeToSelect()未定义方法

时间:2012-07-13 20:15:11

标签: magento

  

致命错误:调用未定义的方法   Desbest_Showdown_Model_Mysql4_Votes_Collection :: addAttributeToSelect()   在   /home/desbest/public_html/clients/magentofull/app/code/local/Desbest/Showdown/controllers/IndexController.php   第19行

IndexController.php

public function voteAction(){
    $shake = Mage::getModel('showdown/votes')
        ->getCollection()
        ->addAttributeToSelect('*')
        ;
}

===============

  

代码/本地/ Desbest /对决/型号/ Mysql4 /投票/的 Collection.php

<?php
class Desbest_Showdown_Model_Mysql4_Votes_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
{
    public function _construct()
    {
        parent::_construct();
        $this->_init('showdown/votes');
    }
}

2 个答案:

答案 0 :(得分:38)

addAttributeToSelect()仅用于EAV样式模型集合(产品,客户等)

对于其他型号,您可以使用Mage_Core_Model_Resource_Db_Collection_Abstract::addFieldToSelect()方法。

答案 1 :(得分:1)

将此添加到Collection.php

public function addAttributeToSort($attribute, $dir=’asc’) 
{ 
    if (!is_string($attribute)) { 
        return $this; 
    } 
    $this->setOrder($attribute, $dir); 
    return $this; 
}

您也可以尝试使用addFilter()或使用setOrder()。

资源:This