我正在尝试将多个过滤器添加到我可以在基本级别上执行的 magento 集合中。我真正想做的是能够通过许多嵌套过滤器来过滤集合,这些过滤器可以是任何级别的深度。例如,我知道我可以使用以下代码添加多个过滤器:
$collection->addAttributeToFilter('example_attribute', array('eq' => 1));
我想要做的是拥有可以相互嵌套的过滤器(AND & OR)。我不确定 Magento 收藏是否已经允许您这样做,但我无法在网上找到任何示例。
提供更多细节和示例:我需要过滤一个集合,其中等效 SQL(忽略我需要的选定字段和 JOINS)将是:
SELECT .........
WHERE
(attribute1 = 1
OR
atttribute2 = 'yes')
AND
qty > 5
AND(
(attribute3 != 'no'
AND
attribute4 = 50 )
OR
(attribute3 != 'no'
AND
attribute6 > 50 )
)
这只是一个简单粗略的示例,但基本问题是如何嵌套任意数量的过滤器。