2016-04-10 21 views
0

Rails MVC denetleyicisini farklı bir ad alanında genişletmeye çalışıyorum ve alt sınıflar görünümler ile uğraşmak yerine JSON'u kabul etmek ve geri göndermek için REST api işlevi görmeye çalışıyorum. G/API/v1/şirketleri rotayı çağırdığınızdaRails API, işleyicilerin nasıl ayarlanacağı/geçersiz kılınacağı

Rails.application.routes.draw do 

    resources :companies 

    namespace :api do 
    namespace :v1, defaults: { format: :json} do 
     resources :companies 
    end 
    end 

Ancak, bir hata "eksik Şablon" Görünüm yok şikayet olsun. Ayrıntılı olarak, bir .erb dosyasını işlemeye çalıştığını düşünen bazı işleyicileri görüyorum. İşte

Missing template api/v1/companies/show, companies/show, application/show with 
{:locale=>[:en], :formats=>[:json], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee]}. 

benim API/v1/companies_controller

class Api::V1::CompaniesController < CompaniesController 

    def show 
    super 
    end 

end 

raylar bir görünüm şablonunu bulmaya kalmaması bunu yapabilir bir yolu var mı ve sadece json döndürür mi?

+0

her zaman olduğu gibi oluşturulması gerekir. – 7urkm3n

+0

@ 7urkm3n Yukarıda eklendi. Şimdilik, sadece temel bir GET on/api/vi/şirketler/1 – tpow

+1

denemeye çalıştım 'controller_to: json' denetleyicisini eklemeye çalıştınız, sağdan aşağıya ekleyin CompaniesController', ayrıca 'response_with (@object) gösteri yönteminde. – 7urkm3n

cevap

1

O u API klasöründe bulunan durumdadır ve `companies_controller.rb` dosyayı gönderebilir JSON

class Api::V1::CompaniesController < CompaniesController 
    respond_to :json 

    def show 
    respond_with(@object) # pass your own object 
    end 

end