我遇到了一個奇怪的行爲,至少對我來說感覺很奇怪。 我使用發票的付款方式,只想獲取有關出生日期的信息,但不是來自客戶,而是僅限於該地點。 我添加了標準的dob字段,它正在工作。 checkout/onepage/savePayment的請求中包含日期信息。獲取更多信息到magento savePayment
我們使用Phoenix-Creditpass http://www.magentocommerce.com/magento-connect/creditpass.html進行檢查。
我的問題是creditpass擴展中的支付信息。該檢查由(JS)payment.save上的Ajax-Request發起。付款信息加載了:Mage::getSingleton('checkout/session')->getQuote()->getPayment()
。據我所知,->debug()
dob信息丟失。
我試圖找出這個問題,我可以看到Mage_Checkout_Model_Type_Onepage::savePayment()
在其中有$quote->save()
之後有正確的數據。 看起來支付信息在兩個地方都是一樣的,因爲它的id和時間戳是一樣的,但method_instance[store]
是不同的,additionalInformations也丟失了,我不知道他們在哪裏丟失。
我的第一個想法是由於JS異步問題,但我在獲得付款信息之前在creditpass擴展中添加了sleep(10)
,但這並沒有幫助。
如果我在過程中添加一些Mage::log
,然後我發現在order->save()
之後記錄了creditpass檢查中的getPayment,所以時間線不應該成爲問題,但是可以改爲什麼?