1
그래서 나는 제이빌더 JSON 렌더링레일 JSON의 RSpec에와 API -> ActionView :: MissingTemplate
#controllers/api/v4/...rb
이 API에서 API를 가지고 미만 :
#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>"
누군가이 문제를 해결할 생각이 있습니까?
html 및 json 응답을 모두 지원 하시겠습니까? – Anthony
내 api는 자신의 폴더 api에 있고 routes.rb -> 네임 스페이스 : api, defaults : {format : 'json'}에서 json으로 기본 렌더링을 설정했습니다. – rolele