Я создал collection.php
модель и добавили addOrderFilter()
функцию, но когда я пытаюсь вызвать addOrderFilter()
в моем файле PHTML, он дает мнеПочему моя функция не работает в файле phtml?
Fatal error: Call to a member function addOrderFilter() on boolean in [...]\magento\app\design\adminhtml\default\default\template\paketid\shipping.phtml on line 5
Это мой shipping.phtml
:
<?php echo $this->getChildHtml('PaketId_Shipping');?>
<h1>Test custom block</h1>
<?php $order = $this->getOrder()?>
<?php $shipping = Mage::getModel('paketid_shipping/result')->getCollection()->addOrderFilter($order) ?>
<?php if(count($shipping)):
foreach($shipping as $shipping): ?>
<?php echo $this->__('Booking Code') ;?>
<?php echo $shipping->getBookingCode(); ?>
<?php endforeach; ?>
<?php endif; ?>
Мой collection.php
модель:
class PaketId_Shipping_Model_Resource_Result_Collection extends Mage_Core_Model_Resource_Db_Collection_Abstract
protected $order;
protected function _construct()
{
$this->_init('paketid_shipping/result');
}
public function addOrderFilter($order)
{
if ($order instanceof Mage_Sales_Model_Order) {
$order = (int) $order->getId();
}
if (!is_array($order)) {
$order = array($order);
}
$this->getSelect()->where("main_table.order_id IN (?)", $order);
//$this->getSelect()->where("main_table.order_id IN (?)", $order)->order('id DESC');
return $this;
}
Сложная часть: почему мой phtml не отображает мою модель collection
? Я делаю что-то неправильно ?
это дает мне 'Ьоо (ложь)' при попытке 'var_dump (Mage :: 'paketid_shipping/результат') -> getCollection () 'и я получаю ту же ошибку при попытке изменить мой код на' Mage :: getResourceModel ('paketid_shipping/result_collection') -> addOrderFilter ($ order); ' – may
Я не получаю' make sure magento не работает в режиме компиляции 'part :( – may