RailsでRESTっぽいクールなURIを実現する

  • ガイド ( How to )
  • ありがとう数:0

はじめに

Railsでhttp://okguide.okwave.jp/guide/12 のようなURIを実現する方法についてのガイドです。

STEP1config/routes.rbを以下のように編集します。

ActionController::Routing::Routes.draw do |map|
map.resources :guides
end

STEP2rake routes

を実行すると、現在のroutesの設定がわかります。

guides GET /guides(.:format) {:controller=>"guides", :action=>"index"}
POST /guides(.:format) {:controller=>"guides", :action=>"create"}
new_guide GET /guides/new(.:format) {:controller=>"guides", :action=>"new"}
edit_guide GET /guides/:id/edit(.:format) {:controller=>"guides", :action=>"edit"}
guide GET /guides/:id(.:format) {:controller=>"guides", :action=>"show"}
PUT /guides/:id(.:format) {:controller=>"guides", :action=>"update"}
DELETE /guides/:id(.:format) {:controller=>"guides", :action=>"destroy"}

実行してみると、7つ設定が出力されます。
上から順に説明すると下記の通りです。
・リソースのリスト
・リソースの新規作成
・リソースの作成用
・リソースの更新用ページの表示
・idで識別されたリソースの内容を返す、
・idで識別されたリソースの内容を更新する
・idで識別されたリソースの削除

STEP3

rake routesを行うと対応するcontrollerとメソッドが表示されるので、あとはそのcontrollerと対応するviewを作成すれば完了です。

まとめ

map.connectを多用しないこと。 map.resourcesを使う方が今風。

このユーザなら私の疑問や悩みを解決してくれそうと思ったら、
質問への回答をリクエストすることができます。

関連するタグ

必要なもの

rails2.3.7

特集


OKWAVE若者応援スペシャル企画

ピックアップ

ページ先頭へ