【发布时间】:2015-07-27 14:29:52
【问题描述】:
我有以下问题:当客户下单时,我想更改客户群:
我的 config.xml:
<sales_order_place_before>
<observers>
<kat_customer_save_observer>
<type>singleton</type>
<class>Kat_Customer_Model_Observer</class>
<method>customerSaveBefore</method>
</kat_customer_save_observer>
</observers>
</sales_order_place_before>
我的观察者.php
class Kat_Customer_Model_Observer extends Mage_Core_Model_Abstract
{
public function customerSaveBefore($observer) {
$selectedgroup= 5;
$order = $observer['order'];
$customer = $order->getCustomer();
$customer->setData('group_id', $selectedgroup)->save();
}
}
问题是观察者执行后,如果我在后端查看,客户信息中的客户组是正确的,但如果我查看订单信息,它会显示旧客户组。 我还尝试插入 order->save() ,奇怪的是,如果我向同一个客户下另一个订单,第二个订单会显示正确的组。 首次下单时如何更新群组?
提前致谢:)
【问题讨论】:
-
$customer->setGroupId($selectedgroup); 怎么样? $customer->save();?