2011-10-11 17 views
13

मैंने एक रेल 3.1 एप्लिकेशन विकसित किया जिसमें उपयोगकर्ताओं और ग्राहकों को इनपुट करने के लिए 100% अजाक्स सीआरयूडी फॉर्म शामिल हैं। मैंने दो अलग-अलग मॉडल, नियंत्रक, विचार इत्यादि बनाए हैं। प्रत्येक मॉडल के विचारों में संपादन अद्यतन और नष्ट करने के लिए jquery फ़ाइलें शामिल हैं। समस्या यह है कि जब मैं रिमोट ऑपरेशन करता हूं तो कोई भी ऑपरेशन करता है, इसे दो बार कहा जाता है। मैं फ़ायरबग में कंसोल व्यू के साथ-साथ वेबब्रिक आउटपुट में आउटपुट में यह पुष्टि कर सकता हूं। क्या कोई यहां क्या हुआ है इसे ट्रैक करने में सहायता कर सकता है? प्रत्येक कॉल को दो बार संसाधित करने के लिए रेलों का क्या कारण होगा?रेल 3.1 रिमोट अनुरोध दो बार सबमिट करने के लिए

+0

कुछ कोड परिप्रेक्ष्य को बेहतर ढंग से समझने में मदद करेंगे ... उदा। उस कोड को पोस्ट करें जिसे दो बार – Rafay

+0

कहा जा रहा है यह एक झुकाव है - क्या आपका जावास्क्रिप्ट कोड या [jquery-rails'] (https://github.com/rails/jquery-rails) पृष्ठ में दो बार शामिल किया जा रहा है? यदि आपने कोई प्रीकंपिलेशन किया है तो सार्वजनिक/संपत्ति फ़ोल्डर की जांच करें। – Anurag

+0

@Anurag यही वह है जो मुझे विश्वास है कि हो रहा है। मैं शुरू होने से पहले "बंडल exec रेक संपत्ति: precompile" भाग गया। क्या मुझे बस उस फाइल को हटाने की ज़रूरत है? – ctilley79

उत्तर

13

यदि आपने संपत्तियों का प्रीकंपल किया है और विकास मोड में चल रहा है, तो जावाकैंक को पृष्ठ पर दो बार शामिल किया जाएगा।

विकास मोड में public/assets से सब कुछ हटाएं।

+0

मैंने आपके समाधान का पालन करने का प्रयास किया (यानी, सार्वजनिक/संपत्ति पथ को हटाने और मेरे सर्वर को पुनरारंभ करने के लिए) लेकिन मुझे अभी भी समस्या में समस्या समझाई जा रही है। क्या मैं कुछ करना भूल रहा हूँ? – user12882

+2

यह एक कैशिंग मुद्दा है। अपने ब्राउज़र कैश रीसेट करें। इससे पहले कि मैंने इसे देखा – ctilley79

+2

क्या आपको पता था कि ऐसा करने के लिए एक रेक आदेश है? बस लिखें: रेक संपत्तियां: अपने टर्मिनल में साफ करें। ;) – Kulgar

19

config.serve_static_assets = falsedevelopment.rb/public/assets से फ़ाइलों को लोड करने से रोक देगा।

असल में मुझे स्थानीय रूप से प्रीकंपाइल करने की आवश्यकता है क्योंकि मेरा टेस्ट मोड /public/assets से केवल स्थिर संपत्तियों का उपयोग कर रहा है - परीक्षण संभावित उत्पादन संपत्ति समस्याओं को पकड़ रहे हैं। कैसे? test.rb कॉन्फ़िगरेशन में बस config.assets.compile = false और config.serve_static_assets = true सेट करें।

+1

रेल 4 से आगे, 'config.serve_static_assets' बहिष्कृत है। इसके बजाए 'config.serve_static_files' का प्रयोग करें। – Jin

संबंधित मुद्दे