2012-02-15 16 views
5

मैं अपने पोर्टल को अधिक आकर्षक और उपयोग करने में आसान इंटरफ़ेस बनाने के लिए IGoogle घटक inettuts का उपयोग करता हूं। मुख्य समस्या यह है कि मैं के बारे में पूछना चाहता हूँ है:IGoogle घटक की वैयक्तिकरण सेटिंग कैसे संग्रहीत करें?

  • कैसे निजीकरण सेटिंग स्टोर करने के लिए, इसे फिर से जब अनुप्रयोग में उपयोगकर्ता के लॉग डिफ़ॉल्ट बनाने के लिए?

मैं कुकीज़ का उपयोग नहीं कर सकता क्योंकि यह उपयोगकर्ता मशीन से संबंधित है, इसलिए मुझे लगता है कि मुझे इन डेटाबेस को अपने डेटाबेस में स्टोर करने की आवश्यकता है। लेकिन मुझे शुरुआत नहीं पता। डेटाबेस की संरचना क्या दिखनी चाहिए? और भंडारण तंत्र क्या है? मेरा मतलब है, क्या मुझे उपयोगकर्ता की हर एक कार्रवाई को स्टोर करना चाहिए या सभी कार्यों को एक लेनदेन में रखना चाहिए या क्या?

मैं Informix डेटाबेस का उपयोग करता हूं, इसलिए कोई सदस्यता नहीं है इसलिए मैं वेब पार्ट्स का उपयोग नहीं कर सकता।

मुझे आशा है कि कोई मुझे किसी प्रदर्शन के तरीके में सभी सेटिंग्स को स्टोर करने के बारे में स्पष्टीकरण के साथ मेरी सहायता कर सकता है।

+1

यह आसान नहीं है। सबसे पहले आप savePreferences जावास्क्रिप्ट प्राप्त करते हैं और परिणाम को स्ट्रिंग में बदलने के लिए इसे बदलते हैं, फिर आप इस स्ट्रिंग को AJAX का उपयोग कर उपयोगकर्ता सेटिंग्स पर डेटाबेस में सहेजते हैं। और लोड पर आप इस स्ट्रिंग को पढ़ते हैं और इसे inettuts.js में संलग्न करते हैं। कई कदम – Aristos

+1

डीबीएमएस की पसंद लगभग पूरी तरह से इस प्रक्रिया के लिए संयोग है। कुकीज के बिना निजीकरण को कैसे काम करना है, इसे हल करने की आवश्यकता है। यदि उपयोगकर्ता आपके सिस्टम में लॉग इन करता है, तो यह अपेक्षाकृत केक का एक टुकड़ा है। यदि आपके पास औपचारिक तंत्र समान नहीं है, तो आप निश्चित रूप से चोट की दुनिया में हैं यदि आप कुकीज़ का उपयोग नहीं कर सकते हैं या नहीं करेंगे। आपके द्वारा संदर्भित ट्यूटोरियल वर्णन करता है कि कुकीज का उपयोग कैसे करें (यदि शीर्षक को जाने के लिए कुछ भी है)। –

उत्तर

2

एक चीज जो आप कर सकते हैं वह संपूर्ण स्टोरेज क्लाइंट पक्ष बनाती है। नए ब्राउज़रों में localStorage वेरिएबल है जो सत्रों में लगातार एक स्ट्रिंग स्टोर कर सकता है। लेकिन इस तरह, जब वे अपने कंप्यूटर बदलते हैं, प्राथमिकताएं खो जाती हैं।

एक और विकल्प जावास्क्रिप्ट में सभी कॉन्फ़िगरेशन करना है, लेकिन बैकएंड का उपयोग JSON स्टोर के रूप में करें।

var settings = { 
    components:[ 
     { 
      'title': 'Foo', 
      'state': 'opened' 
     }, 
     { 
      'title': 'Bar', 
      'state': 'opened' 
     } 
    } 
} 

function close_component(index) 
{ 
    settings.components[index].state = 'closed'; 
    save_settings(); 
} 

var save_settings = function() { 
    $.ajax({ 
     url:'/settings/save', 
     data: { 
      'settings': JSON.stringify(settings) 
     } 
    }; 
}