我需要将选定的位置值存储为cookie值。
我有一个位置和属性表,我从位置表中提取并显示所有位置,因此当用户点击此位置时,它应搜索与该位置相关的所有属性。
现在正在进行搜索,但问题是如何将所选位置值存储为Cookie值。
我的布局页面视图。
<%= form_tag location_search_path, :method=>'get' do %>
<%= select_tag :location_id, options_from_collection_for_select(Location.all, :id, :name, params[:q]), :class=>"btn btn-primary dropdown-toggle" ,:onchange=>'this.form.submit()'%><br>
<% end %>
我的搜索控制器。
def location_search
location=params[:location_id]
@location = Location.find(location).name if params[:location_id].present?
@property = Property.where(['location LIKE ? AND status=?', "%#{@location}%", '3']).all
end
请帮忙。任何帮助都是值得赞赏的。
答案 0 :(得分:2)
您可以使用cookies[:cookie_name] = value
进行设置。因此,在您的情况下,您可能希望在控制器中使用location_search
方法中的类似内容:
def location_search
location=params[:location_id]
@location = Location.find(location).name if params[:location_id].present?
@property = Property.where(['location LIKE ? AND status=?', "%#{@location}%", '3']).all
cookies[:location] = @location
end
您可以在此处详细了解导轨中的Cookie:http://guides.rubyonrails.org/action_controller_overview.html#cookies