所以我在下面有一个api
#controllers/api/v4/...rb此api将jbuilder json呈现在以下位置:
#views/api/v4/....json.jbuilder我有一个规范:
#spec/controllers/api/v4/..._spec.rb
require 'rails_helper'
RSpec.describe Api::V4::AlbumsController do
let(:user) { create(:user) }
before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:user]
sign_in(user)
end
describe "GET index" do
it "returns correct types" do
get :index, {:format => :json, :user_id => user.id}
puts @request.body
puts response.body
user_response = json_response
puts user_response
end
end
end在渲染之前,一切都是正确的,这时我得到了如下结果:
Failure/Error: get :index, {:format => :json, :user_id => user.id}
ActionView::MissingTemplate:
Missing template api/v4/albums/index, api/api/index with {:locale=>[:en], :formats=>[:json], :handlers=>[:erb, :builder, :coffee, :haml]}. Searched in:
* "#<RSpec::Rails::ViewRendering::EmptyTemplatePathSetDecorator:0x007ff4721d9f20>"有没有人有办法解决这个问题?
发布于 2014-12-01 05:21:51
我需要在我的gemfile中包含jbuilder ...因此,它可以呈现.json.jbuilder视图。
https://stackoverflow.com/questions/27194705
复制相似问题