真实代码:
class TitlesController < ApplicationController
respond_to :json
def create
title = Title.create!(params[:title])
respond_with title
end
end
规格:
describe TitlesController do
it 'receives a json response' do
post :create, title: { name: 'fancy title'}, format: 'json'
expect(controller).to respond_with(201)
end
end
==&GT; NoMethodError: #
的未定义方法`title_url'为什么世界上这个试图叫做title_url ??????
答案 0 :(得分:1)
当您使用资源{@ 1}}进行回复时,对于帖子请求,它会重定向到show动作。来自respond_with
documentation:
如果没有错误,即资源已成功保存,则响应重定向到资源,即显示操作。
要获取展示操作的网址,系统会调用title
您可以通过指定title_url(title)
来覆盖此重定向行为(在文档的“自定义响应行为”部分中介绍):
:location