2013-02-06 71 views
11

यदि ActiveRecord :: स्टोर को बहिष्कृत किया जा रहा है, सत्र बनाए रखने के लिए सुझाई गई विधि क्या है? क्या एन्क्रिप्टेड कुकी स्टोर नए मानक है? यदि आप राज्य में 4kb बनाए रखना चाहते हैं तो क्या होगा?रेल में सत्र 4

उत्तर

0

session_store.rb नाम की फ़ाइल को अपने config/initializers फ़ोल्डर के अंदर देखें। वहां आपको यह निर्धारित करना चाहिए कि आप किस प्रकार का सत्र उपयोग करना चाहते हैं। एक मानक, कुकी आधारित एक होना चाहिए, जैसे:

ProjectName::Application.config.session_store :cookie_store, key: '_project_name_session' 

उसके बाद अपने नियंत्रकों के भीतर से हैश session कहते हैं तुम सब करने की जरूरत है। आप वहां कोई मूल्य निर्धारित कर सकते हैं और यह अनुरोधों के बीच जारी रहेगा।

Rails Guides में के रूप में:

config.session_store आमतौर पर config/initializers/session_store.rb में स्थापित किया है और क्या वर्ग सत्र स्टोर करने के लिए उपयोग करने के लिए निर्दिष्ट करता है। संभावित मान हैं: cookie_store जो डिफ़ॉल्ट है,: mem_cache_store, और: अक्षम। आखिरी व्यक्ति रेल को सत्रों से निपटने के लिए नहीं कहता है। कस्टम सत्र स्टोर भी निर्दिष्ट किए जा सकते हैं (...)

+1

मुझे उत्सुकता है कि क्यों: active_record_store को बहिष्कृत किया जा रहा है और यदि मैं ग्राहक के बजाय सर्वर पर राज्य को बनाए रखना चाहता हूं तो सबसे अच्छा विकल्प क्या है। – Michael

+0

मुझे लगता है कि सक्रिय_रेकॉर्ड स्टोर को बहिष्कृत नहीं किया गया है, यह रेल की मॉड्यूलरिटी बढ़ाने के लिए सिर्फ 'gemified' है। –

6

रेल 4 में, अपने Gemfile में gem 'activerecord-session_store' शामिल करें और बंडल इंस्टॉल चलाएं। https://github.com/rails/activerecord-session_store नोट्स के अनुसार माइग्रेशन और कॉन्फ़िगरेशन पूर्ण करें।

दूसरा विकल्प सत्र प्रबंधन के लिए 'दल्ली' मणि का उपयोग कर रहा है।