我是相當新的magento,我的工作版本1.6.2.0。
我想添加我自己的自定義運輸方法模塊,我幾乎沒有問題。 我的magento已經有自定義結帳模塊 - 三步結帳,我要做的是保存附加運送信息,我在第三步(付款和運送)(如商店提貨地點)選擇報價,然後在Review review報價數據並保存到訂單。
我用活動來做到這一點:
checkout_controller_onepage_save_shipping_method保存數據引用
checkout_type_onepage_save_order保存數據以訂單
的問題是,報價與訂單沒有任何自由的地方,我可以節省我的數據,所以我創建安裝程序爲我的模塊:Magento如何在結帳時保存額外的送貨信息到報價
$installer = $this;
$installer->startSetup();
$packboxName = array(
'type' => 'varchar',
'backend' => '',
'frontend' => '',
'label' => 'packboxname',
'input' => '',
'class' => '',
'source' => '',
'global' => 1,
'visible' => true,
'required' => false,
'user_defined' => false,
'default' => '',
'searchable' => false,
'filterable' => false,
'comparable' => false,
'visible_on_front' => false,
'visible_in_advanced_search' => false,
'unique' => false
);
$installer->addAttribute('order', "packboxname", $packboxName);
$installer->getConnection()->addColumn($installer->getTable('sales/order'), 'packboxname', 'varchar(255) DEFAULT NULL');
$installer->addAttribute('quote', "packboxname", $packboxName);
$installer->getConnection()->addColumn($installer->getTable('sales/quote'), 'packboxname', 'varchar(255) DEFAULT NULL');
$installer->endSetup();
,我得到了一個錯誤,指出
$ installer-> addAtt ribute('quote'
有錯誤的Entity Id。 所以我查了DB,表:eav_entity_type,並沒有任何'引用'類型(希望有'訂單')我真的不知道我該怎麼做,我試圖谷歌的東西,我發現教程和修改了我的安裝程序。
$installer->addEntityType('quote', array(
'entity_model' => 'sales/quote',
'table' =>'sales/quote',
));
現在,它的工作,我有更多的地方,我可以節省我的信息,但我的朋友告訴我,我不應該使用addEntityType,是否有任何其他方式才達到我需要什麼?