ローカル環境での動作確認
以上で、ローカル環境でテストサーバを起動できるようになりました。
下記のコマンドで、テストサーバが起動します。
$ dev_appserver.rb .
テストサーバの起動が確認できたら、Webブラウザで次のURLを入力します。
http://localhost:8080/sample/up
SampleControllerのupメソッドでは、テーブルの作成とレコードの追加を行っています。ノーマルのRailsの場合は、マイグレーションの仕組みによってデータベース上のテーブルを構築できますが、GAE環境の場合、サーバ起動前にデータベースアクセスを行うことが難しいため、この方法を採用しています。
無事にテーブルが作成されると、画面のようにテーブルの一覧が表示されるはずです。
GAE上へのデプロイ
ローカル環境での動作確認ができたら、いよいよGAEへデプロイしてみましょう。今回の環境では、デプロイ時のアプリケーションIDをconfig.ruというファイルに記載することになっているので、これを書き換えます。
AppEngine::Rack.configure_app( :application => 'xxxxxxxxxx', # ここをご自分のIDに書き換えてください。 :precompilation_enabled => true, :sessions_enabled => true, :version => "1")
では、以下のコマンドでデプロイしてみましょう。
$ appcfg.rb update . (中略) Email: xxxxxxx@gmail.com ← Gmailアカウントを入力 Password for xxxxxxx@gmail.com: ← パスワードを入力 (中略) Update completed successfully. Success. Cleaning up temporary files...
デプロイが完了したら、自分のアプリケーションIDでGAEアプリケーションにアクセスしてみてください。
第2回をPHP編、第3回をRails編として、GAE上でリレーショナルデータベースを使ったWebアプリケーションを動かす準備を説明しました。いかがだったでしょうか。いままでPythonとJavaしか動作しないと思われていたGAE上で、PHPとRailsアプリケーションを、従来のRDBアクセス形式で動作できました。
SQL4Gは、PureJavaのライブラリですから、JavaベースのGAEアプリケーションでも利用できます。SQL4Gを利用することによって、既存のWebアプリケーションがそのままGAE上で動作させることが現実のものとなってきました。
次回からは、PHPとRailsによる、より実際的なアプリケーションを作っていきたいと思います。ご期待ください。
3/3 |
Index | |
SQL4GでGAE+Railsを体験しよう | |
Page1 GAE+Rails環境のセットアップ 簡単なRailsスクリプトを作成しよう |
|
Page2 サンプルアプリケーションをGAE+SQL4Gに対応させよう environment.rbを書き換える database.ymlを書き換える Gemfileに設定を追加 SQL4G/データベースアクセス関連ライブラリの配置 jruby-rackライブラリのアップデート |
|
Page3 ローカル環境での動作確認 GAE上へのデプロイ |
GAE+PHP/Rubyで拓く新世界 |
Coding Edgeお勧め記事 |
いまさらアルゴリズムを学ぶ意味 コーディングに役立つ! アルゴリズムの基本(1) コンピュータに「3の倍数と3の付く数字」を判断させるにはどうしたらいいか。発想力を鍛えよう |
|
Zope 3の魅力に迫る Zope 3とは何ぞや?(1) Pythonで書かれたWebアプリケーションフレームワーク「Zope 3」。ほかのソフトウェアとは一体何が違っているのか? |
|
貧弱環境プログラミングのススメ 柴田 淳のコーディング天国 高性能なIT機器に囲まれた環境でコンピュータの動作原理に触れることは可能だろうか。貧弱なPC上にビットマップの直線をどうやって引く? |
|
Haskellプログラミングの楽しみ方 のんびりHaskell(1) 関数型言語に分類されるHaskell。C言語などの手続き型言語とまったく異なるプログラミングの世界に踏み出してみよう |
|
ちょっと変わったLisp入門 Gaucheでメタプログラミング(1) Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう |
|
- プログラムの実行はどのようにして行われるのか、Linuxカーネルのコードから探る (2017/7/20)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。最終回は、Linuxカーネルの中では、プログラムの起動時にはどのような処理が行われているのかを探る - エンジニアならC言語プログラムの終わりに呼び出されるexit()の中身分かってますよね? (2017/7/13)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。今回は、プログラムの終わりに呼び出されるexit()の中身を探る - VBAにおけるFileDialog操作の基本&ドライブの空き容量、ファイルのサイズやタイムスタンプの取得方法 (2017/7/10)
指定したドライブの空き容量、ファイルのタイムスタンプや属性を取得する方法、FileDialog/エクスプローラー操作の基本を紹介します - さらば残業! 面倒くさいエクセル業務を楽にする「Excel VBA」とは (2017/7/6)
日頃発生する“面倒くさい業務”。簡単なプログラミングで効率化できる可能性がある。本稿では、業務で使うことが多い「Microsoft Excel」で使えるVBAを紹介する。※ショートカットキー、アクセスキーの解説あり
|
|