2011-08-11 6 views
0

私はRailsが初めてです。次のことが可能かどうか誰にでも教えてもらえますか?あなたが正しい場合は、どのような「ルート」エントリですか?バージョン管理されたWebサービスのためのRailsルート

私は1つのアクション(インデックス)を持つコントローラItemControllerを持っています。デフォルトで設定すると、http://my.app:3000/itemにアクセスできますが、このコントローラ(つまり、このコントローラのみで、他のコントローラではない)にhttp://my.app:3000/api/v1/でアクセスできるようにします。

おかげX

ヴァネッサ

答えて

1

名前空間の下に設定し、それをアップ:

namespace :api do 
    namespace :v1 do 
    resources :items 
    end 
end 

次にあなたがapp/controllers/api/v1/items_controller.rbにこのコントローラを移動し、それApi::V1::ItemsControllerで定義されたクラスを呼び出す必要があります。

APIアクションに必要なカスタムロジックがあるので、そのロジックを別のコントローラに配置する可能性があります。よりApplicationControllerです。つまり、この新しいコントローラーはApplicationControllerではなくApi::V1::BaseControllerから継承されます。

私の書籍「APIの設計」の章では、この種のことを補足説明しますが、Rails 3 in Actionです。

+0

はい、私は同意します – Anatoly

関連する問題