Metodo non valido Custom_ABC_Model_Custom :: AddFieldToFilter Pannello di amministrazione di Magento CE 1.9.2

magento.stackexchange https://magento.stackexchange.com/questions/114923

Domanda

Ciao nel mio file griglia durante la raccolta del filtraggio ma sta mostrando errore.

Ecco il codice del mio file griglia

protected function _prepareCollection() {

    $custom_id = Mage::getSingleton('adminhtml/session')->getCustom()->getId();

    $collection = Mage::getModel('custom_abc/custom')
            ->addFieldToFilter('custom_id',1)
            ->getCollection();

    $adminStore = Mage_Core_Model_App::ADMIN_STORE_ID;
    $store = $this->_getStore();

    $this->setCollection($collection);
    return parent::_prepareCollection();
}
.

Ecco il mio modello

modello / custom.php

class Custom_ABC_Model_Custom extends Mage_Core_Model_Abstract
{
  public function _construct()
  {
    parent::_construct();
    $this->_init('custom_abc/custom');
  }
}
.

modello / risorsa / custom.php

class Custom_ABC_Model_Resource_Custom extends Mage_Core_Model_Resource_Db_Abstract 
{
  public function _construct()
   {
       $this->_init('custom_abc/custom', 'custom_id');
   }
}
.

Modello / Resource / Personalizzato / Collezione.php

class Custom_ABC_Model_Resource_Custom_Collection extends Mage_Core_Model_Resource_Db_Collection_Abstract{

  protected function _construct()
  {
      parent::_construct();
      $this->_init('custom_abc/custom');
  }

}
.

È stato utile?

Soluzione

Bene, puoi applicare solo il addFieldToFilter una volta che hai la raccolta, quindi invece di questo:

$collection = Mage::getModel('custom_abc/custom')
            ->addFieldToFilter('custom_id',1)
            ->getCollection();
.

Dovresti fare:

$collection = Mage::getModel('custom_abc/custom')
            ->getCollection()
            ->addFieldToFilter('custom_id',1);
.

Anche una sintassi più leggera potrebbe essere:

$collection = Mage::getResourceModel('custom_abc/custom_collection')
            ->addFieldToFilter('custom_id',1);
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top