Ruby on rails 如何保存用户首选项
我有一个应用程序,现在,我需要保存用户的首选项。Ruby on rails 如何保存用户首选项,ruby-on-rails,ruby-on-rails-3,mongodb,devise,mongoid,Ruby On Rails,Ruby On Rails 3,Mongodb,Devise,Mongoid,我有一个应用程序,现在,我需要保存用户的首选项。 我已经做了以下工作: class User include Mongoid::Document include Mongoid::Timestamps embeds_one :setting end 及 问题是:如何制作表单来保存用户的首选项?我完全不知道… 任何东西都很感激:) 还要创建控制器 class SettingsController < ApplicationController def create
我已经做了以下工作:
class User
include Mongoid::Document
include Mongoid::Timestamps
embeds_one :setting
end
及
问题是:如何制作表单来保存用户的首选项?我完全不知道…任何东西都很感激:) 还要创建控制器
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
类设置控制器
我制作了一个这样的表单:我看到了#的未定义方法“settings\u path”
现在它说我需要create
方法…我如何保存它?因为你需要在控制器中定义该操作。我做了这样的事情:怎么了?为什么我的重定向不起作用?为什么,在保存或更新后,url会变成类似于“respond_to do | format | if current_user.save format.html{重定向到“/dashboard”,注意:“Alteracoes salvas.”结束`谢谢:D
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