当我在我的用户控制器中点击这个销毁方法时,我遇到了以下错误。
AbstractController::DoubleRenderError (在此操作中多次调用渲染和/或重定向。请注意,您只能调用渲染或重定向,每个操作最多调用一次。另请注意,重定向和渲染都不会终止操作的执行,因此如果你想在重定向后退出一个动作,你需要做一些类似“redirect_to(...) and return”的事情。):
这很奇怪,因为老实说,我只回应一次电话。
这是我的行动:
def destroy
user = User.find(params[:id])
if user.has_role_for? current_client
# then we remove the role
user.has_no_roles_for! current_client
# was that the users only role?
if user.roles.count == 0
user.destroy
end
respond_with head :ok
else
respond_with({:error=>'unauthorised'}, :status => :forbidden)
end
end
有任何想法吗?