2016-04-11 16 views
1

aslında benim REST API için raylar kullanmak json hale eksik ve ben json benim nesneyi dönüştürmek gerekir ama çalıştığınızda bu hata var: Bu benim kodudurRaylar Şablon

  <h1>Template is missing</h1> 
     <p>Missing template firms/show, application/show with {:locale=&gt;[:en], :formats=&gt;[:html, :text, :js, :css, :ics, :csv, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :handlers=&gt;[:erb, :builder, :arb, :jbuilder]}. Searched in: 
    * &quot;/Users/allan/Desktop/Work/back/app/views&quot; 
    * &quot;/Library/Ruby/Gems/2.0.0/gems/activeadmin-0.6.0/app/views&quot; 
    * &quot;/Library/Ruby/Gems/2.0.0/gems/kaminari-0.16.3/app/views&quot; 
    * &quot;/Library/Ruby/Gems/2.0.0/gems/devise_invitable-1.5.5/app/views&quot; 
    * &quot;/Library/Ruby/Gems/2.0.0/gems/devise-3.5.4/app/views&quot; 
</p> 

def show 
     firm= Firm.find_by_subdomain(params[:subdomain]) 
     if firm.present? 
      respond_to do |format| 
      @firm = firm 
      format.json { render :json => @firm.to_json } 
      end 
     end 
     end 

burada birileri beni :)

çözün yardımcı olabilir umut:

def show 
    render json: Firm.find_by_subdomain(current_subdomain) 
    end 

Teşekkür ederiz

cevap

0

Rotanızı sorgularken, sorgunun sonunda .json eklemeye çalışın. Bu olmadan, html'u görüntülemeye çalışacak ve sizin durumunuzda bulunmayabilecek olan görünüm dosyasını aramaya başlayacaktır.

0

Şablonun eksik olması, bir json isteği yapmamanız için html görüntüsü sormanız anlamına gelir. Eğer bağımsız olarak her zaman biçimi param json formatına dönmek isterseniz

Bunu yapmak:

before_action :set_default_response_format 

protected 

def set_default_response_format 
    request.format = :json 
end 

@source: Rails 4 - How to render JSON regardless of requested format?