Ruby on Rails:从输入字段保存会话变量

时间:2013-12-17 06:34:30

标签: ruby-on-rails ruby session session-variables session-cookies

当用户输入位置时,如何保存会话变量(可能是cookie)?我想保留这些信息以备将来登录。因此,他们不必多次重新键入其位置。

<%= form_tag search_path, :method => :get do %>
  <%= text_field_tag :q, params[:q], :class => "search" %>
  <%= text_field_tag :loc, params[:loc], :class => "search-main", :id => "loc-search", :placeholder => "address, neighborhood, city, state or zip" %>
  <%= button_tag :type => :submit, :class => "btn btn-medium btn-inverse" do %>
    <i class="icon-search icon-white"></i>
  <% end %>
<% end %>

这是我的layouts/application.html.erb

如果尚未设置变量,我必须设置变量,如果已经设置了变量,则将其显示在字段中

2 个答案:

答案 0 :(得分:2)

您可以使用cookies:

cookies[:name] = {
  value: 'my_cookie',
  expires: 1.year.from_now,
}

查看更多here

您也可以使用session_store之类的this

答案 1 :(得分:1)

你试过了吗?

session[:location] = params[:loc]