KOYAMA Yoshiaki のブログ

プログラミングについての試行錯誤をつらつら書き溜めていきます。

TurboGears×Python

TurboGears×Python (LLフレームワークBOOKS)

TurboGears×Python (LLフレームワークBOOKS)


興味があったので購入してみました。Python については、みんなのPython : asin:479733665X を読んだ程度の知識しかありません。TurboGears×Python にも簡単な Python についての説明があります。


以前、Ruby on Rails に挑戦したことがあるので、TurboGears の理解もしやすかったです。サンプルも http://www.webcore.co.jp/techinfo/python/tgbook/ からダウンロードできます。


インストールの方法についても環境別に詳しく説明されています。簡単に紹介しておきます。これが正しいのかあまり自信はありません。


1) Python 2.4.4 のインストール

Python標準リリース
http://www.python.jp/Zope/download/pythoncore

から python-2.4.4-macosx2006-10-18.dmg をダウンロードしてインストールする。/usr/local/bin を PATH に通す必要があります。


2) TurboGears のインスト−ル

TurboGears: Front-to-Back Web Development
http://www.turbogears.org/

Download TurboGears
http://www.turbogears.org/download/index.html

から、ファイル tgsetup.py をダウンロードして、ターミナル上でコマンド

$sudo python2.4 tgsetup.py

を実行してインストールする。


3) pysqlite のインストール

pysqlite - pysqlite - Trac
http://initd.org/tracker/pysqlite/wiki/pysqlite

Latest 2.x version (2.3.3) の下 sources をクリックして pysqlite-2.3.3.tar.gz をダウンロードしてください。Finder 上で pysqlite-2.3.3.tar.gz をダブルクリックして展開し、展開したフォルダにターミナル上で移動、コマンド

$sudo python.2.4 setup.py install

を実行してください。(Mac OS X の開発環境 Xcode が必要かもしれません。) 正しくインストールされるはずです。(ez_setup.py*1 を利用する方法もあるようです。)

これで TurboGears のインストールは完了です。私の動作環境は Mac OS X 10.4.9 ビルド 9P135 上です。


4) サンプルを試す。

書籍「TurboGears×Python」のサンプルコード ― Webcore株式会社
http://www.webcore.co.jp/techinfo/python/tgbook/

それぞれの章の 'もっと読む' をクリックするとダウンロードページが表示されます。'ファイルのダウンロードはここをクリック' をクリックしてダウンロードしてください。


4-1) tg-admin toolbox

Safari 上だとツールボックスCatWalk を使ってデータを入力できないようです。Safari の環境設定、'一般'/'デフォルト Web ブラウザ : ' で Firefox を選択してください。(メニューに Firefox がない場合はインストールしてください。)


4-2) 3章にて紹介の掲示板アプリ

Finder 上でtgbbs.zip を展開し、展開したフォルダ tgbbs にターミナル上で移動します。まず最初にモデルに合わせてデータベースにテーブルを作成する必要があります。下のコマンドをターミナル上で実行してください。

$cd tgbbs
$tg-admin sql create

ファイル devdata.sqlite が作成されるはずです。

次のコマンドを実行してプロジェクトを起動します。

$python2.4 start-tgbbs.py

Firefox で次の URL

http://localhost:8080/show_form
または
http://127.0.0.1:8080/show_form

にアクセスし、掲示板に書き込んでください。実行 ボタンを押すと下の URL でリストが表示されます。

http://localhost:8080/
または
http://127.0.0.1:8080/


4-2) 5章にて紹介の予定共有アプリ/非Ajax

3章と同様に tgcal_noajax.zip を展開し、ターミナル上でフォルダ tgcal_noajaxに移動し、データベースにテーブルを作成します。

$cd tgcal_noajax
$tg-admin sql create

インタラクティブシェルを起動し、ユーザーを入力する必要があります。

$tg-admin shell
(CustomShell)
>>> u = User(user_name='sample', email_address='sample@foo.com', display_name='sample', password='sample')
>>> 
'Use Ctrl-D (i.e. EOF) to exit.'
>>> Do you wish to commit your database changes? [yes]

上のようにユーザー (ユーザー名 ; sample 、パスワード : sample) を作成します。 Ctrl-D でシェルから抜けることができます。データベースに反映するか聞いてくるのでリターンキーを押してください。

次のコマンドを実行して、プロジェクトを起動します。

$python2.4 start-tgcal.py

http://localhost:8080/ または http://127.0.0.1:8080/Firefox でアクセスしてください。
User Name : sample、Password : sample を入力し、ログインしてください。

詳細は TurboGears×Python : asin:4774130567 140 ページを参考にしてください。


4-3) 5章にて紹介の予定共有アプリ/Ajax

'4-2) 5章にて紹介の予定共有アプリ/非Ajax版' と同様に実行してください。

*1:http://docs.turbogears.org/1.0/InstallMac