Class: ActionController::CookieJar
- Defined in:
- lib/action_controller/cookies.rb
Overview
:nodoc:
Instance Method Summary collapse
-
#[](name) ⇒ Object
Returns the value of the cookie by
name
– or nil if no such cookie exists. - #[]=(name, options) ⇒ Object
-
#delete(name) ⇒ Object
Removes the cookie on the client machine by setting the value to an empty string and setting its expiration date into the past.
-
#initialize(controller) ⇒ CookieJar
constructor
A new instance of CookieJar.
Constructor Details
#initialize(controller) ⇒ CookieJar
Returns a new instance of CookieJar.
41 42 43 44 45 |
# File 'lib/action_controller/cookies.rb', line 41 def initialize(controller) @controller, @cookies = controller, controller.request. super() update(@cookies) end |
Instance Method Details
#[](name) ⇒ Object
Returns the value of the cookie by name
– or nil if no such cookie exists. You set new cookies using either the cookie method or cookies[]= (for simple name/value cookies without options).
49 50 51 |
# File 'lib/action_controller/cookies.rb', line 49 def [](name) @cookies[name.to_s].value.first if @cookies[name.to_s] && @cookies[name.to_s].respond_to?(:value) end |
#[]=(name, options) ⇒ Object
53 54 55 56 57 58 59 60 61 62 |
# File 'lib/action_controller/cookies.rb', line 53 def []=(name, ) if .is_a?(Hash) = .inject({}) { |, pair| [pair.first.to_s] = pair.last; } ["name"] = name.to_s else = { "name" => name.to_s, "value" => } end () end |
#delete(name) ⇒ Object
Removes the cookie on the client machine by setting the value to an empty string and setting its expiration date into the past
66 67 68 |
# File 'lib/action_controller/cookies.rb', line 66 def delete(name) ("name" => name.to_s, "value" => "", "expires" => Time.at(0)) end |