2012-03-07 68 views
1

我手动在订单表(sales_flat_order)中添加了自定义字段(sales_code)。使用自定义字段的过滤器订单集合:Magento

现在我想过滤使用该自定义字段的订单集合(在管理订单网页中)。但magento抛出一个错误。

我的代码:

$collection->addFieldToFilter('sales_code', '123456'); 
$collection->getSelect()->where('sales_code="123456"'); 

错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'sales_code' in 'where clause' 

有没有办法用在Magento自定义字段筛选集合。

+1

在这种情况下,我倾向于'echo(string)$ collection-> getSelect()',然后将查询粘贴到PhpMySQL中,错误消息有时会更清晰并且表名也是一种帮助。 – clockworkgeek 2012-03-07 12:04:25

+0

(1)Magento的哪个版本? (2)“手动”意味着你是否直接在表中添加了一列? – benmarks 2012-03-07 12:44:56

+0

1 - Magento ver-1.6.1.0 2 - 是的,我直接添加。 – 2012-03-07 12:47:35

回答

1

要解决此问题,我使用sales_flat_order_grid表代替表sales_flat_order。