在结帐过程中,即使客户从下拉菜单中选择了现有地址,该customer_address
实体也会被重新保存。任何想法是为了什么?
更新:
它从Mage_Checkout_Model_Type_Onepage::saveOrder
执行以下代码的位置开始:
$service = Mage::getModel('sales/service_quote', $this->getQuote());
$service->submitAll();
这submitAll
将Mage_Sales_Model_Service_Quote::submitOrder
执行以下命令:
$transaction->save();
此方法循环遍历quote(?)的所有对象并保存它们。
更新:
最令人作呕的是他们正在为客户拥有的所有地址进行此操作。因此,如果您的访客在通讯录中保存了10个地址,那么所有这些地址都将在结帐时重新保存。不要怀疑为什么它是Magento中最消耗资源的部分。
customer_address
订单时将保存实体。没有报价引用。
customer_address_entity
或报价中?