我创建了一个新的订单属性。代码如下:
$installer = $this;
$installer->startSetup();
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$setup->addAttribute('order', 'location', array(
'position' => 50,
'type' => 'text',
'label' => 'Location',
'global' => 1,
'visible' => 0,
'required' => 1,
'user_defined' => 1,
'searchable' => 0,
'filterable' => 1,
'comparable' => 1,
'visible_on_front' => 0,
'visible_in_advanced_search' => 0,
'unique' => 0,
'is_configurable' => 0,
'position' => 1,
));
$installer->endSetup();
然后我需要在结帐时保存该属性值。我为' sales_order_save_before'创建了一个观察员功能。动作。
public function saveLocationOrderattributes(Varien_Event_Observer $observer){
$event = $observer->getEvent();
$order = $event->getOrder();
$locationid = '10';
$order->setLocation($locationid);
Mage::getSingleton('custommodule/custommodule')->saveLocationOrderattributes($order);
return $this;
}
Din没有任何错误。然后我检查了订单详细信息中的值。什么都没有。
任何人都可以告诉我如何保存订单的属性值。
谢谢
答案 0 :(得分:0)
you can try the code: $order->save();