我正在通过 Mickael Hartl 的教程学习 RoR ...
在我的 parameters_controller 中创建或更新记录(我的应用程序的参数定义)时,我需要从会话 cookie 添加数据。所以我在我的控制器中添加了这段代码:
private
def current_user
remember_token = User.encrypt(cookies[:remember_token])
@current_user ||= User.find_by(remember_token: remember_token)
end
我的创建函数中的这段代码可以从会话数据中自动设置一些字段:
def create
@parameter = Parameter.new(parameter_params) #code generated by Rails
@parameter.updated_by = current_user.name #my additional code
@parameter.created_by = current_user.name
respond_to do |format|
if @parameter.save
...
哪个工作正常,但它不适用于更新功能:
def update
@parameter.updated_by = current_user.name #my additional code
respond_to do |format| #code generated by Rails
if @parameter.update(parameter_params)
...
什么都不做。
有人可以解释一下我错过了什么吗?
非常感谢 !
此致,
弗雷德