हम "फायरचेकआउट" नामक टेम्पलेट मास्टर द्वारा कस्टम चेकआउट एक्सटेंशन का उपयोग करते हैं। सुनिश्चित नहीं है कि यह प्रासंगिक है, लेकिन मुझे लगा कि मुझे इसका जिक्र करना चाहिए। कभी-कभी मुझे एक लेनदेन असफल ईमेल दिखाई देता है, "कृपया एक शिपिंग विधि निर्दिष्ट करें"। मैंने यह ट्रैक करने का प्रयास करने में काफी समय लगाया है कि यह कैसे हो सकता है और मैं खो गया हूं। मैंने इस मुद्दे को डुप्लिकेट करने के बारे में सोचने की हर चीज की कोशिश की है। मेरे द्वारा किए गए कार्यों के संयोजन के आधार पर (कार्ट से आइटम जोड़ना/निकालना, शिपिंग विकल्पों को बदलने वाले कूपन कोड को जोड़ने/निकालना, मोबाइल और डेस्कटॉप साइटों आदि के बीच स्विच करना) मैं इसे बनाने में सक्षम हूं ताकि चेकआउट पृष्ठ नहीं हो सके शिपिंग विधि के लिए कोई विकल्प नहीं चुना गया है। हालांकि, अगर मैं आदेश जमा करने का प्रयास करता हूं तो मुझे शिपिंग विधि अनुभाग में तत्काल लाल संदेश मिलता है जो कहता है "कृपया शिपिंग विधि निर्दिष्ट करें" (ईमेल में जो भी कहता है और पेज पर प्रदर्शित त्रुटि में क्या कहता है, उसके बीच अंतर देखें ... लापता "ए")। इसका परिणाम एक त्रुटि ईमेल नहीं है।Magento लेनदेन त्रुटि "कृपया एक शिपिंग विधि निर्दिष्ट करें"
कोड मुझे लगता है कि त्रुटि ईमेल TM_FireCheckout_Model_Service_Quote में शुरू हो रहा है के माध्यम से सर्च कर रहे हैं _validate में वर्ग विधि
$method= $address->getShippingMethod();
$rate = $address->getShippingRateByCode($method);
if (!$this->getQuote()->isVirtual() && (!$method || !$rate)) {
Mage::throwException($helper->__('Please specify a shipping method.'));
}
(Mage_Sales_Model_Service_Quote फैली) इस मामले में, मुझे लगता है कि या तो $ विधि या $ दर शून्य या गलत है, लेकिन यह क्यों/कैसे हो सकता है? क्या ऐसा कुछ भी है जो मैं यह सुनिश्चित करने के लिए कर सकता हूं कि ऐसा कभी नहीं होता? फायर चेकआउट के _validate विधि और अभिभावक वर्ग के _validate विधि के बीच एकमात्र अंतर है जिसमें फ़ील्ड को आवश्यक माना जाता है। यह किसी भी तरह से पता वस्तु, इसलिए करने के लिए getShippingMethod और getShippingRateByCode आगामी कॉल में परिवर्तन नहीं करता ही एक डिफ़ॉल्ट स्थापित के रूप में होना चाहिए।
यदि आवश्यक हो तो मैं अतिरिक्त विवरण प्रदान कर सकता हूं। मैं मूल रूप से यह समझने की कोशिश कर रहा हूं कि उस त्रुटि को किस प्रकार ट्रिगर कर सकता है और मैं इसे पुन: उत्पन्न कैसे कर सकता हूं ताकि मैं अंततः छेद को पकड़ सकूं जो इसे पहले स्थान पर ले जा रहा है।
धन्यवाद!
_validate() 'Mage :: लॉग (" फ़ायरचेकआउट: "। Var_dump ($ विधि) में लॉग लाइन क्यों नहीं जोड़ें।" | "। Var_dump ($ दर), शून्य, 'mydebug.log', सत्य) ; Mage_Sales_Model_Service_Quote की एक स्थानीय प्रतिलिपि के लिए और इस कस्टम लॉग फ़ाइल को पूंछ, शायद ऑर्डर और ग्राहक आईडी के साथ-साथ यह देखने के लिए कि क्या वे मान बने रह रहे हैं? – B00MER
मेरे पास बिल्कुल वही त्रुटि है, लेकिन मैं एपथा से ऑनस्टेपकेकआउट एक्सटेंशन का उपयोग कर रहा हूं। किसी भी सहायता की सराहना की जाएगी। – Lennon