padrinoでアプリケーション開発 5 : コントローラの作成とルーティング

ようやくコントローラーを書いていきます。

公式のドキュメントは、こちらになります。

コントローラーの作成

コントローラーの作成は、 padrino generate controller を利用すると簡単に行うことができます。

$ bundle exec padrino generate controller index
      create  app/controllers/index.rb
      create  app/views/index
       apply  tests/rspec
      create  spec/app/controllers/index_controller_spec.rb
      create  app/helpers/index_helper.rb
       apply  tests/rspec
      create  spec/app/helpers/index_helper_spec.rb

また、コントローラーの作成時に作成するメソッドを渡すことも可能です。

作成した後に気がついてメソッド名を追加して generate を実行すると、コンフリクトが起こり、上書きするかどうか聞かれます。
y を入力するとコントローラを上書きして作成してくれます。

コントローラの名前の指定は大文字小文字は無視されるようです。

$ bundle exec padrino generate controller Index get:index
    conflict  app/controllers/index.rb
Overwrite /vagrant/yuru/app/app/controllers/index.rb? (enter "h" for help) [Ynaqdh] y
       force  app/controllers/index.rb
       exist  app/views/index
       apply  tests/rspec
   identical  spec/app/controllers/index_controller_spec.rb
   identical  app/helpers/index_helper.rb
       apply  tests/rspec
   identical  spec/app/helpers/index_helper_spec.rb

ルーティングの設定

まず、app/app.rb に前回記載した下記の内容を削除します。

    get '/' do
      "Hello World!"
    end

作成したコントローラー(app/app/controllers/index.rb) の次の部分をコメントアウトします。

  get :index, :map => '/foo/bar' do
    session[:foo] = 'bar'
    render 'index'
  end

対応するViewを作成します。
場所は app/view/index の下になります。
今回はテンプレートに erb を指定しているので、index.erb を作成します。
中身はとりあえず下記で。

test

サーバーを再起動して…

$ bundle exec padrino start -h 0.0.0.0

で、ブラウザから http://localhost:3006でアクセスできるはずです。

次の記事
padrinoでアプリケーション開発 6 : 作成中 …

padrinoでアプリケーション開発

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク