Я хочу дать пользователям возможность изменять информацию своей учетной записи с помощью плагина restful_authentication в rails.
Я добавил эти два метода в свой контроллер пользователей:
def edit
@user = User.find(params[:id])
end
def update
@user = User.find(params[:id])
# Only update password when necessary
params[:user].delete(:password) if params[:user][:password].blank?
respond_to do |format|
if @user.update_attributes(params[:user])
flash[:notice] = 'User was successfully updated.'
format.html { redirect_to(@user) }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
end
end
end
Также яскопировано new.html.erb в edit.html.erb .Учитывая, что ресурсы уже определены в routs.rb, я ожидал, что он будет работать легко, но каким-то образом, когда я нажимаю кнопку сохранения, он вызывает метод create вместо update , используя POST HTTP-запрос .Сразу после этого он автоматически выходит из сеанса .
Есть идеи?