是否可以从更新操作/方法以外的操作/方法更新? 例如,在我的用户控制器中,我已经有了用户帐户其他部分的更新方法。
我需要单独更改用户密码。是否有可能有这样的事情:
def another_method_to_update
user = User.authenticate(current_user.email, params[:current_password])
if user.update_attributes(params[:user])
login user
format.js { render :js => "window.location = '#{settings_account_path}'" }
flash[:success] = "Password updated"
else
format.js { render :form_errors }
end
end
然后知道我的更改密码表格是否使用该方法来执行更新?
它有3个字段: 当前密码 新密码 确认新密码
我使用ajax来显示表单错误。
亲切的问候
答案 0 :(得分:3)
是的,你可以:
在routes.rb中添加:
resources :users do
member do
put :another_method_to_update
end
end
在视图中,您必须使用以下网址:
another_method_to_update_user_path(@user)