2017-03-23 8 views
0

私は既にここで話題を調べましたが、上記の解決策は私にとってはうまくいかなかったのです。Api :: V1 :: Controllerの未定義メソッド `respond_to '

私はレールアプリケーション用のAPIを作成し、Railscastのチュートリアルに従ってAPIのバージョン管理を行っています。私は、これは私のroutes.rbファイルであるRailsの5

を使用しています:

Rails.application.routes.draw do 

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

end 

そして、この新しいorders_controller.rbcontrollers/api/v1下:

module Api 
    module V1 
    class OrdersController < ApplicationController 

     respond_to :json 

     def index 
      respond_with Order.all 
     end 

    end 
    end 
end 

私は常に次の例外を取得http://localhost:3000/api/v1/ordersを訪問:

undefined method `respond_to' for Api::V1::OrdersController:Class Did you mean? respond_to? 

私には、 dyは私のgemfileにresponderを追加しましたが、うまくいきませんでした。

答えて

1

ご注文のコントローラでスペルミスをしました。また

respond_with Order.all 

repsond_with Order.all 

を変更して、あなたもファイルルートでスペルミスを犯しました。変更:

namespace :api, defaults: { format: 'josn' } do 

namespace :api, defaults: { format: 'json' } do 
+0

ああ、感謝に;)しかし、それでもまだ、残念ながら – Luk579

+0

を実行することを忘れ万が一、あなたがたのと同じエラーを取得しては 'グラムレスポンダレール:また – Mark

+0

install'、あなたがいることを言及しました'responder'宝石をインストールしてもうまくいかなかった。宝石の名前は複数ですが、gemfileに 'gem responders'を追加して' bundle install'を実行すると、あなたは良くなるはずです – Mark

関連する問題