aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/cookies.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/cookies.rb')
-rw-r--r--actionpack/lib/action_controller/cookies.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/cookies.rb b/actionpack/lib/action_controller/cookies.rb
index 924dc714b1..80ee617987 100644
--- a/actionpack/lib/action_controller/cookies.rb
+++ b/actionpack/lib/action_controller/cookies.rb
@@ -36,7 +36,7 @@ module ActionController #:nodoc:
# Returns the value of the cookie by +name+ -- or nil if no such cookie exist. You set new cookies using either the cookie method
# or cookies[]= (for simple name/value cookies without options).
def [](name)
- @cookies[name.to_s].value if @cookies[name.to_s] && @cookies[name.to_s].respond_to?(:value)
+ @cookies[name.to_s].value.first if @cookies[name.to_s] && @cookies[name.to_s].respond_to?(:value)
end
def []=(name, options)
@@ -49,6 +49,11 @@ module ActionController #:nodoc:
set_cookie(name, options)
end
+
+ # Removes the cookie on the client machine by setting the value to an empty string.
+ def delete(name)
+ set_cookie(name, "value" => "")
+ end
private
def set_cookie(name, options) #:doc: