0

我有一个用户模型。我想从其他一些控制器更新用户列,这与用户无关。以下是我更新值的代码。

   def update
        @admin=current_user
        if @admin.update_attribute(:allow, params[:user][:allow])
          flash[:success] = "Feature updated"
          redirect_to '/recalls'
        else
            flash[:success]=@admin.errors.full_messages
        end
   end

问题是允许数据库中的值被更新。我可以从我的 Rails 控制台验证它。但是在重定向到时/recalls,它会注销并重定向到登录。我不知道我做错了什么。请让我知道。提前致谢

4

2 回答 2

0

我也面临同样的问题..通过这样的事情解决了这个问题

@admin=User.find current_user.id

请试试这个..不确定这是否适用于您的情况..

于 2013-11-29T10:49:14.327 回答
0

from the comment of Gopal Rathore in original post. I added sign_in method as follows to solve the problem

   def update
        @admin=current_user
        if @admin.update_attribute(:allow, params[:user][:allow])
          sign_in
          flash[:success] = "Feature updated"
          redirect_to '/recalls'
        else
            flash[:success]=@admin.errors.full_messages
        end
   end
于 2013-12-11T07:33:46.863 回答