1

我在 magento 中创建了一个自定义网格,显示保存的视频 url 及其工作。但我只想显示urlid例如在哪里的记录3。这是我的_prepareCollection功能

protected function _prepareCollection()
{
    // Get and set the collection for the grid
    $collection = Mage::getResourceModel('drecomm_productvideo/video_collection');
    //what should i put in here, addFieldtoSelect?
    $this->setCollection($collection);
    return parent::_prepareCollection();
}

我的网格扩展自该类Mage_Adminhtml_Block_Widget_Grid中没有功能。addFieldToFilter

4

1 回答 1

5

首先,如果您想为您的集合创建一个永久过滤器(这意味着您将无法从网格视图中删除它),您应该使用addFieldToFilter您的集合对象。这个方法不是grid类的一部分,它是集合类的一部分。

$collection = Mage::getResourceModel('drecomm_productvideo/video_collection')
    ->addFieldToFilter('urlid', 3);

现在,如果您只想为您的集合添加一个默认过滤器(这意味着它将从一开始就应用它,但您将能够重置它并查看所有条目),您应该使用setDefaultFilter()网格块的方法。

protected function _construct()
{
    parent::_construct();

    //... your code
    $this->setDefaultFilter(array('urlid' => 3));
}
于 2012-10-05T08:40:43.960 回答