相关疑难解决方法(0)

Magento集合中的addAttributeToFilter和OR条件

我想根据不同属性的几个标准选择产品.

我知道如何使用 $collection->addAttributeToFilter('someattribute', array('like' => '%'));

但是我想对OR条件使用几个属性.

喜欢:

$collection->addAttributeToFilter('someattribute', array('like' => 'value'));`
Run Code Online (Sandbox Code Playgroud)

要么

$collection->addAttributeToFilter('otherattribute', array('like' => 'value'));`
Run Code Online (Sandbox Code Playgroud)

获得"某些属性" "分配"设置为"价值"的产品

可能吗?

php collections attributes magento

26
推荐指数
2
解决办法
5万
查看次数

通过COND1和(COND2或COND3)过滤Magento集合

如何通过attribute1 = value1 AND(attribute2 = value2 OR attribute3 = value2)过滤Magento销售订单集合?我可以写WHERE {COND1} AND {COND2}或{COND3},但我不能分组AND({COND2} OR {COND3})

首先,这不是一个重复的AFAIK,我已经看到了,它在版本1.3.2中运行良好,但在Enterprise Edition 1.11.1中没有.这就是我要做的...获取在定义的日期范围内创建或更新的Magento订单,其状态为"处理".以下是在以前版本中有效的代码,但不在我的代码中:

$orderIds = Mage::getModel('sales/order')->getCollection()
    ->addFieldToFilter('status', 'processing')
    ->addFieldToFilter(array(
        array(
            'attribute' => 'created_at',
            'from' => $fromDate->toString('yyyy-MM-dd HH:mm:ss'),
            'to'   => $toDate->toString('yyyy-MM-dd HH:mm:ss'),
        ),
        array(
            'attribute' => 'updated_at',
            'from' => $fromDate->toString('yyyy-MM-dd HH:mm:ss'),
            'to'   => $toDate->toString('yyyy-MM-dd HH:mm:ss'),
        ),
    ));
Run Code Online (Sandbox Code Playgroud)

这是它生成的SQL,以及产生的错误:

SELECT `main_table`.* FROM `sales_flat_order` AS `main_table`
WHERE (status = 'processing') AND (Array = '')

SQLSTATE[42S22]: Column not found: 1054 Unknown …
Run Code Online (Sandbox Code Playgroud)

php mysql magento

9
推荐指数
1
解决办法
5016
查看次数

标签 统计

magento ×2

php ×2

attributes ×1

collections ×1

mysql ×1