トップページ -> プログラミング -> Ruby による Web/データベース・プログラミング -> Padrino をインストールし,使ってみる
[サイトマップへ], [サイト内検索へ]

Padrino をインストールし,使ってみる

Padrino とは、 Sinatra 上に構築された フル・スタック (full-stack) の ruby フレームワーク.必要な機能を選んで取り込めるのが便利.

参考 Web ページ: http://www.padrinorb.com/guides

手順の要点

gem install padrino
padrino generate project hoge -t shoulda -e erb -c sass -s jquery -d activerecord
cd hoge
bundle
padrino generate admin 
padrino rake ar:create
padrino rake ar:migrate
padrino rake seed 
padrino start

Padrino のインストール

  1. ruby, rubygesm, sinatra のインストール (Install ruby, rubygems and sinatra)

    ◆ Ubuntu での実行手順例 (Instal Sinattra on Ubuntu)

    sudo apt-get install ruby
    sudo apt-get install ruby-dev
    sudo apt-get install rubygems
    sudo gem install sinatra
    

    [image]
  2. erubis, eruby のインストール (Install erubis and eruby)
    sudo apt-get -yV install erubis
    sudo apt-get -yV install erubis-doc
    sudo apt-get -yV install liberubis-ruby
    sudo apt-get -yV install eruby
    
  3. Padrino と Padrino 関連ソフトウエアのインストール
    sudo gem install activerecord
    sudo gem install tilt
    sudo gem install slim
    sudo gem install padrino
    

    [image]
  4. インストール済の gem の更新
    sudo gem update --system 
    sudo gem update
    

    Padrino を使ってみる

    ルーティング定義、コントローラの生成、ビューの生成を行なってみる

    1. Padrino プロジェクトの生成
      1. ひな形の生成

        オプションで、次のように設定する

        • プロジェクト名: hoge
        • orm: activerecord
        • test: shoulda
        • script: jquery
        • renderer: erb
        • stylesheet: sass
        padrino generate project hoge -t shoulda -e erb -c sass -s jquery -d activerecord 
        

        [image]
      2. Gemfile の調整

        末尾に「gem 'activesupport'」を追加する.

        gem 'activesupport'
        

        [image]
      3. bundle の実行
        cd hoge
        bundle
        

        [image]

        bundle の実行時に次のようなエラーメッセージが出る場合がある.

        Bundler could not find compatible versions for gem "tilt":
          In Gemfile:
            padrino (= 0.11.1) ruby depends on
              tilt (~> 1.3.0) ruby
        
            padrino (= 0.11.1) ruby depends on
              tilt (1.4.1)
        

        [image]

        エラーを回避するために、hoge/Gemfile を編集し、 末尾に次を追加 する

        gem 'tilt', '1.3.7'
        

        さらに、次のコマンドを実行する

        sudo gem install tilt -v 1.3.7
        

        [image]

        その後 bundle を実行する。エラーメッセージが出ていないことを確認する

        bundle
        
      4. config/database.rb の確認

        [image]
    2. ルーティング定義
      1. 「padrino rake routes」で、ルーティングを確認しておく.

        ルーティングが未定義であることが確認できる

        padrino rake routes
        

        [image]
      2. app/app.rb を編集し、ルーティングを定義する

        ※ app/app.rb では、ルーティング定義のほか、Caching など、さまざまな定義ができる

            get "/" do
               "Hello, World!"
            end
            get :welcome do
               render 'welcome/index.erb'
            end
        

        [image]
    3. コントローラの生成
      padrino generate controller welcome
      

      [image]
    4. ビューファイルの作成

      app/views/welcome/index.erb を試しに次のように作成

      <html>
      <p> 
      Welcome
      <%= params %>
      </html> 
      

      [image]
    5. 再度、「padrino rake routes」で、ルーティングを確認する
      padrino rake routes
      

      [image]
    6. padrino start」で、サーバを起動
      padrino start
      

      [image]
    7. http://localhost:3000/welcome で画面が出ることを確認

      http://localhost:3000/welcome

      [image]
    8. app/views/welcome/index.erb を次のように書き換えてみる

      JavaScript を使っている例

      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
          <head>
      
              <meta http-equiv="Content-Type" content="text/html; initial-scale=1.0; charset=utf-8" />
              <meta http-equiv="Content-Style-Type" content="text/css" />
              <meta http-equiv="Content-Script-Type" content="text/javascript" />
              <meta http-equiv="MSThemeCompatible" content="yes" />
      
              <title>
                  JavaScript Sample
              </title>
              
              <script type="text/javascript">
              <!--
                  function foo(val){
                  alert(val);
                  }
              //-->
              </script>
              
          </head>
      
          <body>
                  
              <script type="text/javascript">
              <!--
                 document.write( <%= params %> )
              //-->
              </script>
                
          </body>
      </html>
      

    ダッシュボードの生成

    先ほどのディレクトリ/var/tmp/hoge のままで、次の操作を行う.

    1. 「padrino generate admin」の実行
      padrino generate admin 
      

      [image]
    2. 所定のコマンドを実行
      bundle
      padrino rake ar:create
      padrino rake ar:migrate
      padrino rake seed 
      

      [image]
    3. 再度、「padrino rake routes」で、ルーティングを確認する

      [image]
    4. http://localhost:3000/admin で管理画面が出ることを確認

      http://localhost:3000/admin

      [image]

    本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

    問い合わせ先: 金子邦彦(かねこ くにひこ) [image]