#pgid
 
 ** ルーティングで自由にURLを割あてる [#i584e5a8]
 - URLのパスを自由に設定でき、URLのPathInfoの位置に指定した値をパラメータとして利用できる
 
  例)
  http://localhost:3000/
  http://localhost:3000/blog/date/2006/07/28
 
 
 *** http://localhost:3000/ で自分が指定したControllerのActionを実行させたい [#l8c185bb]
 - あらかじめやっておくこと
 -- public/index.htmlを削除する~
 ↑これが優先されるので消しておく
 
 - Blogというcontrollerを作る
  ruby script/generate controller Blog
 
 -- Actionをセット
 --- ↓こんな感じ app/controller/blog_controller.rb
  class BlogController < ApplicationController
    def view
    end
  end
 
 -- Viewを作る
 --- ↓こんなのをつくる app/views/blog/view.rhtml
  <html>
  <body>
  blog desu.
  </body>
  </html>
 
 - WEBrickで見てみる
  ruby script/server
 
 -- http:/localhost:3000/
 --- Rootingがおかしいといわれる
 
 
 - Rootingを設定する
 -- ↓このように追加する config/routes.rb
     map.connect ':controller/:action/:id'
  --
  +  map.connect ':controller/:action/:id', :controller => 'Blog', :action => 'view'
     map.connect ':controller/:action/:id'
 
 -- デフォルトで blog というコントローラーの、view というアクションを実行するようにした
 
 - WEBrickで見てみる
 -- http:/localhost:3000/
 --- 表示された(*^^*)
 
 
 *** http://localhost:3000/blog/date/2006/07/28 で自分が指定したControllerのActionを実行させたい [#c95fe90d]
 
 - Rootingを設定する
 -- config/routes.rb
  map.connect 'blog/date/:year/:month/:day', :controller => 'blog', :action => 'by_date'
 
 - デフォルト値の設定も可能
 -- config/routes.rb
  map.connect 'blog/date/:year/:month/:day', :controller => 'blog', :action => 'by_date',
    :month => nil, :day => nil
 
 - 値のチェックも可能
 -- config/routes.rb
  map.connect 'blog/date/:year/:month/:day', :controller => 'blog', :action => 'by_date',
    :requirements => {:year => /\d{4}/, :day => /\d{1,2}/, :month => /\d{1,2}/}
 
 - ルーティングで設定した値はControllerで取得できる
 -- ↓こんな感じ app/controller/blog_controller.rb
    def by_date
      render_text 'URLから指定した日時は…' + params[:year] +'/'+ params[:month] +'/'+ params['day']
    end
 
 -- http://localhost:3000/blog/date/2006/07/28でアクセスすると…
 --- 結果は↓こんな感じ
  URLから指定した日時は…2006/07/28
 
 
 #blikifooter(竹村)
 
 #comment
 
 

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

アークウェブのサービスやソリューションはこちら