2011年5月17日火曜日

web2py インストールからアプリケーション作成まで

本当は別の記事にしようと考えていたのですが、急遽、前回の記事 の続きに変更します。web2py のインストールからアプリケーション作成までを、イメージ付きで紹介します。

私も触り始めて半月程度なので内容はいい加減かもしれませんが、多少は役に立つのではないかと思い、記事にしました。

web2py インストール

フレームワークのダウンロードは web2pyホームページ のトップページ右上にリンクボタンがあるので、クリックすればダウンロードページに遷移する。

ダウンロードページには、

  • Current (for everybody)
  • Nightly Built (for testers)
  • Trunk (for developers)
の3種類があるが、通常は Current を使用する。最新はバージョン 1.95.1 だ。

Current の中にも3つリンクボタンがある。これについては次の表で説明する。

For Windowsweb2py にWindows実行形式のPythonランタイムを含んだパッケージ
For Macweb2py にMac実行形式のPythonランタイムを含んだパッケージ
Source Codeweb2pyのソースコードだけのパッケージ

web2py は Python 2.4, 2.5, 2.6, 2.7 で動く。ただ開発検証では主に、2.5 を使っているそうだ。

開発用マシンに既に Python を導入しているのなら、Source Code をダウンロードする方が良いだろう。理由はランタイム版では、外部ツールが動かないなどの不都合があるからだ。

ダウンロードファイルは ZIP形式なので、解凍して出てきたフォルダーを自分の好きな場所に移動させれば、インストール完了となる。

web2py 起動・管理画面表示

Windows版・Mac版
web2pyのフォルダを開き、web2py.exe (windows) 、web2py.app (osx) をクリックする。
 
ソースコード版
コマンドライン(コマンドプロンプト)で web2py のフォルダーに移動し、次のコマンドを実行する。
python web2py.py

コンソールが立ち上がるので、コンソールの Choose Password に適当なパスワードを設定し、 Start Server ボタンを押す。すると、web2pyサーバが立ち上がる。

web2pyサーバが起動すると、ブラウザーに Welcome画面が表示される。

web2pyの管理画面が表示するために、click here for the administrative interface をクリックする。

ログイン画面が表示されるので、先ほどコンソールに入力したパスワードでログインする。

すると管理画面が表示される。

アプリケーション作成

新規アプリケーションを作成するには、管理画面の New simple application にアプリケーション名を入力してCreate ボタンを押す。

アプリケーションの雛形が作られ、アプリケーション編集画面が開く。

編集画面は MVC(モデル・ビュー・コントローラ)に従った画面構成になっている。各項目を簡単に説明しておく。

modelsモデルデータモデルを記述
controllersコントローラロジックを記述
viewsビューデータ表現を記述
languages言語国際化のため、他言語への翻訳を記述
static files静的ファイルCSS、JavaScript、画像ファイルなど
modulesモジュールアプリケーションに関係するモジュール
Pluginsプラグインアプリケーションに関係するプラグイン

アプリケーションにコードを追加

作成したアプリケーションに試験的にコードを追加してみよう。

コントローラの default.py の横の edit を押す。

するとエディタ画面が表示される。

エディタ画面で、次のコードを追加する。

def test():
    return "Hello Python"
手順としては次の通り。
  1. default.py ソースコードの一番最後までスクロールして、コードを追加する。
  2. コードを追加したら、セーブボタンを押す。
  3. エディタ上部の exposes に、ソースに含まれる関数名の一覧が表示されているので、今追加した関数名 test をクリックして表示してみる。

コードの表示結果は次のようになる。
url はデフォルト値の http://127.0.0.1:8000/myapp/default/test となる。

最後に

新しいアプリケーションを作ってコードを追加してみたが、余計な設定をする必要がなく、とても簡単にできる。

この他に、web2py の機能の一つにアプリケーションをパッケージ化するという機能がある。パッケージ化したアプリケーションは簡単に配布できるようになる。Free web2py Appliances というページには自由に使えるパッケージが紹介されている。気になったパッケージがあればダウンロードすることが可能だ。ダウンロードしたパッケージは管理画面の Upload & install packed application で取り込むことができる。