2012-07-01 6 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, и я вижу 'undefined method 'settings_path' для # <# : 0xa213234>' –

+0

, вам нужно отредактировать свои маршруты. Добавить 'recources: settings' –

+0

Теперь он говорит, что мне нужен метод' create' ... как его сохранить? –

Смежные вопросы