2012-07-01 41 views
0

我有一個應用程序,現在,我需要保存用戶的偏好。
我已經做了以下內容:如何保存用戶偏好

class User 
    include Mongoid::Document 
    include Mongoid::Timestamps 

    embeds_one :setting 
end 

class Setting 
    include Mongoid::Document 
    include Mongoid::Timestamps 

    belongs_to :user 

    field :notify, type: Boolean 
end 

的問題是:如何才能讓一個形式,以節省用戶的喜好?我不知道在所有...
什麼是讚賞:)

回答

1
form_for current_user.settings || current_user.build_settings 

還創建控制器

class SettingsController < ApplicationController 
    def create 
    settings = Settings.new params[:settings] 
    if settings.save 
     flash[:notice] = 'Settings saved' 
    else 
     flash[:error] = 'Settings could not be saved' 
    end 
    redirect_to :back 
    end 

    def update 
    settings = Settings.find params[:id] 
    if settings.update_attributes params[:settings] 
     flash[:notice] = 'Settings saved' 
    else 
     flash[:error] = 'Settings could not be saved' 
    end 
    redirect_to :back 
    end 
end 
+0

我做了這樣的形式:HTTPS://gist.github。 com/3029121,我看到'#<#:0xa213234>' –

+0

'未定義的方法'settings_path'你必須編輯你的路線。添加'recources:settings' –

+0

現在它說我需要'create'方法...我該如何保存? –