2015-02-08 50 views
0

背景資料Ruby on Rails的,在cookie

我想有一個設置我的web應用程序,允許用戶爲內部應用程序的體驗設置一些基本的設置,形成節約布爾值。我正在製作一個JavaScript,它根據用戶選擇的設置來處理必須完成的操作。

事情是......我希望我的用戶在cookie中更改任何內容時自動保存其設置。我還沒有制定出所需的AJAX,但我遇到了一個早期的問題。

我的問題

我不能讓一個cookie改變複選框的 「checked'ness」。

我有這種形式。

的意見/間/ 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 

它的工作原理好嗎當我使用textfield而不是複選框。

此外

如果你能幫助我使這個更REST類型的,請告訴我。

回答

0

我會創建一個`SettingsController」

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

這種方式,您可以使用布爾控制器動作toggle。以及其他設置更新的其他操作

然後您可以在設置中使用"1""0"作爲布爾值。然後在cookie上包裝一個模型。