Magento 中的 addAttributeToFilter 和 addFieldToFilter 有什么区别?我创建了一个自定义属性是/否。但是当我尝试提取产品系列时,它们都不适合我。它没有过滤任何东西。
$Products = Mage::getModel('catalog/product')->getCollection();
$Products->addAttributeToSelect('*');
$Products->addFieldToFilter('amazon_listed',1);
$Products->addFieldToFilter('status',Mage_Catalog_Model_Product_Status::STATUS_ENABLED);
$Products->load();
最佳答案
addFieldToFilter 将基于表catalog_product_entity中数据库中的列过滤产品。
addAttributeToFilter 将根据您在集合中包含的属性过滤产品。
在您的情况下,您必须像这样使用 addAttributeToFilter :
$Products->addAttributeToFilter('amazon_listed',array('eq' => 1));
$Products->addAttributeToFilter('status',array('eq' => Mage_Catalog_Model_Product_Status::STATUS_ENABLED));
关于php - Magento 中 addAttributeToFilter 和 addFieldToFilter 的区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22208147/