2
我無法讓用戶更新自己的數據。如果不是管理員,康康用戶會更新自己嗎?
我使用它具有以下代碼的標準色器件用戶控制器檢查,如果更新被允許用下面的代碼:
def update
authorize! :update, @user, :message => 'Not authorized as an administrator.'
@user = User.find(params[:id])
if @user.update_attributes(params[:user])
self.update_districts
self.update_property_types
redirect_to users_path, :notice => "User updated."
else
redirect_to users_path, :alert => "Unable to update user."
end
end
,這裏是我的修改康康舞能力代碼,允許用戶更新他們自己的模式,如果他們不是管理員。
user ||= User.new # guest user (not logged in)
if user.has_role? :admin
can :manage, :all
else
can :manage, User, :id => user.id
end
任何想法爲什麼這不允許我更新自己的用戶數據?