如何将自定义过滤器添加到Magento中的列网格?
我在Adminhtml中有自定义网格如何将自定义过滤器添加到Magento中的列网格?,magento,magento-1.7,Magento,Magento 1.7,我在Adminhtml中有自定义网格 protectedfunction\u prepareCollection() { /*@var$collection Mage\u Catalog\u Model\u Resource\u Product\u collection*/ $collection=Mage::getModel('catalog/product')->getCollection(); $collection->addAttributeToSelect('*'); $collect
protectedfunction\u prepareCollection()
{
/*@var$collection Mage\u Catalog\u Model\u Resource\u Product\u collection*/
$collection=Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToSelect('*');
$collection->joinField('category\u id','category/category\u product','category\u id','product\u id=entity\u id',null,'left');
$collection->groupByAttribute('entity_id');
$collection->addStaticField('category_id');
$collection->addExpressionAttributeToSelect('category_grp','GROUP_CONCAT(category_id)','category_id');
$this->setCollection($collection);
返回父项::_prepareCollection();
}
受保护函数\u prepareColumns()
{
父项::_prepareColumns();
$this->addColumn('category\u id',数组(
'header'=>Mage::helper('newsletter')->,
“索引”=>“类别”,
“类型”=>“类别”,
“选项”=>$options,
'对齐'=>'左',
//'filter_index'=>this->'getFlatExpressionColumn('category'),
退还$this;
}
类别为带int的数组
我的问题是如何将过滤器添加到标题列中,以从字段中过滤项目
例如,仅过滤类别为7的产品(类别为3,6,7,13).我认为您不需要任何自定义过滤器。
只需根据字段名设置
索引
:
'index' => 'category_id',
我认为您不需要任何自定义过滤器。
只需根据字段名设置
索引
:
'index' => 'category_id',
查看magento
过滤器\条件\回调
选项
$this->addColumn('categories', array(
....
'filter_condition_callback' => array($this, '_applyMyFilter'),
..
)
);
protected function _filterCategoriesCondition($collection, $column)
{
if (!$value = $column->getFilter()->getValue()) {
return;
}
$this->getCollection()->addFieldToFilter('categories', array('finset' => $value));
}
看
过滤条件回调
选项
$this->addColumn('categories', array(
....
'filter_condition_callback' => array($this, '_applyMyFilter'),
..
)
);
protected function _filterCategoriesCondition($collection, $column)
{
if (!$value = $column->getFilter()->getValue()) {
return;
}
$this->getCollection()->addFieldToFilter('categories', array('finset' => $value));
}
看