如何在rails

时间:2016-03-28 08:02:32

标签: ruby-on-rails ruby-on-rails-3 cookies setcookie

我想将用户选择的位置存储为cookie。 如果未自动选择位置,则应该获取用户浏览位置并将其存储为cookie值。 怎么做?

我已经完成了这样的代码 当用户选择一个位置时,位置现在通过此代码存储为cookie。

@location = Location.find(location).name if location.present? cookies[:location_id] = { :value => @location, :expires => Time.now + 3600}

但我不知道如何自动获取用户浏览位置并存储在cookie中。

请帮我这样做。

任何帮助都是值得赞赏的。

1 个答案:

答案 0 :(得分:0)

我已经提到了以下检索当前网址

How do I get the current absolute URL in Ruby on Rails?

有关如何存储cookie的参考,可以从以下内容中找到引用:

(请注意您可以设置的不同类型Cookie的差异,因为您可能希望设置在浏览器关闭时过期的Cookie或未过期的Cookie)

http://api.rubyonrails.org/classes/ActionDispatch/Cookies.html

结合这两个,我可以编写如下代码:

存储Cookie

cookies[:url] = request.original_url

检索存储的Cookie

url = cookies[:url]

希望这有帮助。

如果我没有正确回答您的问题,或者您有任何其他问题,请告诉我。