【问题标题】:Delete cookie that begins with a specific string in Rails在 Rails 中删除以特定字符串开头的 cookie
【发布时间】:2017-06-20 23:46:41
【问题描述】:

我有一个 Rails 应用程序,它可以让用户获得多个报价。我将每个报价存储在这样的 cookie 中:

   if !results.nil?
      cookies["quote_#{SecureRandom.uuid}"]
    end

当用户创建多个引号时,我将拉出 cookie 以显示在屏幕上。我希望用户能够通过单击按钮来删除或删除所有引用。

如何使用某种通配符来删除所有以 quote_ 开头的 cookie?所以像......

def clear_cookies
    cookies.delete "quote_*"
    redirect_to compare_path
  end

【问题讨论】:

    标签: ruby-on-rails cookies


    【解决方案1】:

    您可以迭代您的 cookie 并仅在所需的 cookie 上使用 deletemethod:

    cookies.each { |key, _| cookies.delete(key) if key.start_with?("quote_") }
    

    【讨论】:

    • 不错的一个!直到现在我才知道有一个方法叫start_with?
    猜你喜欢
    • 2018-12-22
    • 2022-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-23
    • 1970-01-01
    • 2020-12-12
    • 1970-01-01
    相关资源
    最近更新 更多