magento - Magento 上的复杂 boolean 条件

标签 magento boolean

我在 magento 教程中找不到此问题的解决方案。 当涉及两个属性时,如何在自定义模型中实现 boolean OR 运算符?官方教程中的示例仅演示了对一个字段 sku 使用 OR boolean 值。

$filter_a = array('like'=>'a%');
$filter_b = array('like'=>'b%');

Mage::getModel('catalog/product')
->getCollection()
->addFieldToFilter('sku', array($filter_a, $filter_b))
->getSelect();

这翻译成

WHERE e.sku like 'a%' or e.sku like 'b%' 

但是如果我需要运行以下条件怎么办:

 WHERE   (e.sku like 'a%' or e.sku like 'b%')  or  (table_price.value >= '10' ) 

如何在 Magento 上执行此操作?谢谢

最佳答案

您的语法不正确,请尝试以下操作:

Mage::getModel('catalog/product')
->getCollection()
->addAttributeToFilter(
    array(
        array('attribute'=>'firstname', 'like'=>'test%'),
        array('attribute'=>'lastname', 'like'=>'test%'),
    )
)

您可以将属性名称替换为“sku”或您想要的任何名称。每个数组条目都将进行“或”运算。

关于magento - Magento 上的复杂 boolean 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12472713/

相关文章:

javascript - 关于 for-if 循环中 boolean 逻辑的混淆

Java 说这个方法有一个构造函数名称

php - 如果覆盖另一个模块使用的模块中的类会发生什么

来自辅助函数的 magento Baseurl

javascript - 产品列表页面中的 Magento 数量框

sql-server - 如何在条件评估期间从查询中返回 boolean 值?

java - 以 boolean 值作为返回值的递归方法来计算数字中的数字

自定义模块安装期间 Magento Store 配置奇怪的行为

magento - getAddressesHtmlSelect() 更改 - Magento

swift - 总共标签点击两个按钮