【发布时间】:2012-07-14 11:46:24
【问题描述】:
对于多选属性,如何过滤产品集合以查找该属性未选择任何内容的产品?我尝试了以下方法,但都没有奏效:
$productCollection->addAttributeToFilter( 'multi_select_attribute', array( 'null' => true ) );
$productCollection->addAttributeToFilter( 'multi_select_attribute', array( 'null' => '' ) );
$productCollection->addAttributeToFilter( 'multi_select_attribute', array( 'eq' => '' ) );
$productCollection->addAttributeToFilter( 'multi_select_attribute', array( 'finset' => '') );
全部返回一个空集合。
那么,如何过滤产品集合以查找“multi_select_attribute”未选择任何内容的产品?
编辑 - 附加信息:
这就是我正在做的:
$productCollection = Mage::getResourceModel('catalog/product_collection');
$this->_addProductAttributesAndPrices($productCollection);
$productCollection->addStoreFilter();
$productCollection->addAttributeToFilter( ... one of the above ... );
【问题讨论】:
-
array( 'notnull' => '' ) 似乎列出了所有具有值的产品,但 array( 'null' => '' ) 返回一个空列表!
-
它是您要添加到收藏中的唯一过滤器吗?你能提供更多代码吗?
-
如果你用
_addProductAttributesAndPrices注释掉一行会有什么变化吗? -
notnull = 假?也许 finset => array('value'=>null)?
标签: magento