繁体   English   中英

Magento客户组未按顺序更改

[英]Magento Customer Group not changing in order

我有以下问题:当客户下订单时,我想更改客户组:

我的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>

我的Observer.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_group_id:

$order = $observer['order'];
$order->setData('customer_group_id',$selectedgroup)->save();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM