Ruby on rails 3 Rails对已删除资源的行为作出响应?
我在Rails 3中使用respond_to和respond_with pair来响应删除销毁请求。销毁操作在UsersController中定义。它销毁由Ruby on rails 3 Rails对已删除资源的行为作出响应?,ruby-on-rails-3,Ruby On Rails 3,我在Rails 3中使用respond_to和respond_with pair来响应删除销毁请求。销毁操作在UsersController中定义。它销毁由params[:id]指定的用户,并使用JS模板进行响应。然而,请求在RSpec测试中不断失败,我不确定如何修复它 下面是我的UsersController的一个片段: class UsersController < ApplicationController respond_to :html, only: [:index, :sh
params[:id]
指定的用户,并使用JS模板进行响应。然而,请求在RSpec测试中不断失败,我不确定如何修复它
下面是我的UsersController的一个片段:
class UsersController < ApplicationController
respond_to :html, only: [:index, :show, :new, :edit]
respond_to :js, only: [:create, :update, :delete]
...
def destroy
@user = User.find(params[:id])
@user.destroy
respond_with @user
end
end
测试“respond with JS content”成功,但是测试“return HTTP successs”失败。当我使用调试器检查
response.code
时,它是406。自从删除成功后,我期待2xx。这是Rails的正常行为还是我的代码有问题?看来你把REST删除和控制器的销毁搞砸了。Rails响应程序对以下内容一无所知:删除操作、更改
respond_to :js, only: [:create, :update, :delete]
到
或者将块传递给响应者,而不是
respond_with @user
使用
respond_to :js, only: [:create, :update, :destroy]
respond_with @user
respond_with @user do |format|
format.js
end