Ruby on Rails 5.2 - ActionDispatch::Session::CacheStore

वर्ग ActionDispatch :: सत्र :: CacheStore




ruby

वर्ग ActionDispatch :: सत्र :: CacheStore

जनक:
ActionDispatch :: सत्र :: AbstractStore

एक सत्र स्टोर जो ActiveSupport::Cache::Store का उपयोग करता है जो सत्रों को संग्रहीत करता है। यह स्टोर सबसे उपयोगी है यदि आप अपने सत्रों में महत्वपूर्ण डेटा संग्रहीत नहीं करते हैं और आपको उन्हें विस्तारित अवधि के लिए रहने की आवश्यकता नहीं है।

विकल्प

  • cache - उपयोग करने के लिए कैश। यदि यह निर्दिष्ट नहीं है, तो Rails.cache का उपयोग किया जाएगा।

  • expire_after - एक सत्र की लंबाई स्वचालित रूप से समाप्त होने से पहले संग्रहीत की जाएगी। डिफ़ॉल्ट रूप से, कैश का :expires_in विकल्प उपयोग किया जाता है।

पब्लिक क्लास के तरीके

नया (एप्लिकेशन, विकल्प = {}) स्रोत दिखाएं
# File actionpack/lib/action_dispatch/middleware/session/cache_store.rb, line 16
def initialize(app, options = {})
  @cache = options[:cache] || Rails.cache
  options[:expire_after] ||= @cache.options[:expires_in]
  super
end
सुपरक्लास विधि एक्शनडिसपैच :: सत्र :: संगतता.न्यू

सार्वजनिक प्रवृत्ति के तरीके

delete_session (env, sid, Options ) स्रोत दिखाएँ
# File actionpack/lib/action_dispatch/middleware/session/cache_store.rb, line 42
def delete_session(env, sid, options)
  @cache.delete(cache_key(sid))
  generate_sid
end

कैश से एक सत्र निकालें।

find_session (env, sid) स्रोत दिखाएं
# File actionpack/lib/action_dispatch/middleware/session/cache_store.rb, line 23
def find_session(env, sid)
  unless sid && (session = @cache.read(cache_key(sid)))
    sid, session = generate_sid, {}
  end
  [sid, session]
end

कैश से एक सत्र प्राप्त करें।

write_session (env, sid, session, विकल्प) स्रोत दिखाएँ
# File actionpack/lib/action_dispatch/middleware/session/cache_store.rb, line 31
def write_session(env, sid, session, options)
  key = cache_key(sid)
  if session
    @cache.write(key, session, expires_in: options[:expire_after])
  else
    @cache.delete(key)
  end
  sid
end

कैश में सेशन सेट करें।