मैं एक रेल ऐप बनाने की कोशिश कर रहा हूं जिसमें आप पृष्ठ पर कई अलग-अलग स्थानों से उसी मॉडल को संपादित कर सकते हैं। मैं परिवर्तनों को मैन्युअल रूप से सहेजने के विकल्प के साथ, प्रत्येक एक्स सेकंड में स्वचालित रूप से सहेजे जाने के लिए परिवर्तन चाहता हूं।रेल: Google डॉक्स-स्टाइल ऑटोसेव
मैं एक समाधान के साथ आया हूं, लेकिन यह बहुत जटिल लगता है, और मुझे लगता है कि अन्य रेल उपयोगकर्ताओं को पहले से ही इसी तरह के प्रश्नों का सामना करना पड़ा है।
जिस समाधान के साथ मैं आया था, वह मेरे पृष्ठ पर एक छिपी हुई प्रपत्र है जिसे वास्तव में सबमिट किया गया है, और उसके बाद छिपे हुए फॉर्म को अपडेट करने वाले पृष्ठ के चारों ओर बिखरे हुए कई "डमी" रूप हैं।
एक बार सबमिट होने के बाद, छुपा फॉर्म मॉडल को अपडेट करता है, और मॉडल में तर्क होता है कि प्रतिक्रिया में कौन सी आरजेएस फाइलों को वापस किया जाना चाहिए। ये बंडल किए गए हैं और अपडेट प्रतिक्रिया के रूप में भेजे गए हैं।
कुछ सीमाएँ:
- एक रूप टैग (एक से अधिक मॉडल पृष्ठ पर नियंत्रक देखते हैं /)
- एक ही क्षेत्र के कई स्थानों से संपादन योग्य हो सकता है में पूरे पृष्ठ लपेट नहीं कर सकते
किसी के पास अधिक कुशल तरीका है?
1. मैं इनपुट फ़ील्ड के बीच आईडी संघर्ष से कैसे बचूं? याद रखें कि मैं एक ही फ़ील्ड को कई अलग-अलग स्थानों में संपादित करने की अनुमति देना चाहता हूं – shmichael
2. मैं आरजेएस का उपयोग किये बिना किसी अपडेट किए गए फॉर्म फ़ील्ड के सभी प्रस्तुतियों को अपडेट करने का ख्याल रखूंगा? मैं पूरे पेज को एक फ़ील्ड अपडेट के लिए रीफ्रेश नहीं करना चाहता हूं। – shmichael
के लिए 1. आप अपने इनपुट सहायक में एक आईडी पैरामीटर पास कर सकते हैं। <% = f.text_field: नाम,: id => 'bla'%> टकराव से बचने के लिए यह आपकी आईडी का ख्याल रखने के लिए तब तक निर्भर है। हो सकता है कि आप उन्हें फॉर्म नाम – hellvinz