【问题标题】:Ruby on Rails, saving boolean value in a cookieRuby on Rails,将布尔值保存在 cookie 中
【发布时间】:2015-02-20 04:16:39
【问题描述】:

背景信息

我想在我的网络应用程序上有一个设置表单,它允许用户为应用程序内部的体验设置一些基本设置。我正在制作一个 javascript,它会根据人们选择的设置来处理必须完成的事情。

问题是...我希望我的用户在更改任何内容时自动将其设置保存在 cookie 中。我还没有解决所需的 AJAX,但我遇到了一个早期问题。

我的问题

我无法让 cookie 更改复选框的“已选中”。

我有这个表格。

views/rooms/index.html.haml

= form_tag settings_path, method: 'post' do
  = label_tag :my_boolean
  = check_box_tag :my_boolean, cookies[:my_boolean]
  = submit_tag

还有这个控制器

控制器/settings_controller.rb

def index
  cookies[:my_boolean] = params[:my_boolean]
  redirect_to root_path
end

当我使用文本字段而不是复选框时,它可以正常工作。

还有

如果你能帮助我让这更安静,请告诉我。

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-4 cookies


    【解决方案1】:

    我会创建一个`SettingsController'

    路线可能有 match "/settings/toggle/:setting" => "settings#toggle", as: :toggle_settings

    这样您就可以将控制器操作toggle 用于布尔值。以及其他设置更新的其他操作

    然后您可以在设置中使用"1""0" 作为布尔值。然后在 cookie 周围包裹一个模型。

    【讨论】:

      猜你喜欢
      • 2017-09-30
      • 2018-01-09
      • 2010-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-20
      • 1970-01-01
      • 2011-06-22
      相关资源
      最近更新 更多