在我的规范中,当我运行下面的 POST 请求时,一切正常。
before do
request_payload = {
player: {
first_name: "Joe",
last_name: "Carradine",
team_id: "1"
}
}
post :create, request_payload
end
但是当我运行 PUT 规范时:
before do
request_payload = {
player: {
first_name: "Buck",
last_name: "Carradine",
team_id: "1"
}
}
put :update, { id: 3 }, request_payload
end
我收到这样的错误:
Failure/Error: put :update, { id: 1 }, request_payload
NoMethodError:
undefined method `[]' for nil:NilClass
我无法弄清楚什么被认为是零。此 API 调用在 REST 客户端中运行良好。
这是基于先前 SO 问题的另一个错误:Receiving error in RSpec for PUT, but not POST