Pyramid 1.3: pcreateからページ追加まで

Pyramid 1.3で、pcreateからHello World、静的ファイルの追加・参照まで。主にメモ用です。
0
shinriyo @shinriyo

@alterakey こんばんは。htmlの一枚ページをPyramidで追加するだけがわかりません。

2011-12-18 23:30:28
shinriyo @shinriyo

@alterakey 「bin/pcreate -s starter MyProject」でProjectを作成したところまでできてます。

2011-12-18 23:31:08
shinriyo @shinriyo

@alterakey おそらく、「myproject/views.py」にtemplateの参照を追加して行くのだと思いますが・・。

2011-12-18 23:32:02
Takahiro Yoshimura @alterakey

@shinriyo 基本的な方法としては、__init__.pyにrouteを追加して、views.pyに追加した関数に対してview_configでテンプレートを当てていく感じです。

2011-12-18 23:54:53
shinriyo @shinriyo

@alterakey なるほどです。もともとある、config.add_route('home', '/')の行の下に追加していく感じですね?

2011-12-18 23:58:30
Takahiro Yoshimura @alterakey

@shinriyo はい。routeの追加はそういう感じになります。 http://t.co/RjMGuhEP

2011-12-19 00:05:53
Takahiro Yoshimura @alterakey

@shinriyo テンプレートエンジンはデフォルトでChameleonなんですが、TALは面倒なのでJinja2あたりがオススメですよ。Jinja2ならテップレートをごっそり置換するだけで静的ページだろうがなんだろうが出ます。

2011-12-18 23:44:44
Takahiro Yoshimura @alterakey

@shinriyo s/テップレート/テンプレート/ orz

2011-12-18 23:45:30
shinriyo @shinriyo

RoRのようなサクサクPyramidやりたいけど作り方ワカンネ

2011-12-18 23:36:55
Takahiro Yoshimura @alterakey

@shinriyo RoRのような、包括的なフレームワークを期待しているのであればDjangoの方が良いですよ。Pyramidはそういう性格のものではないです…

2011-12-18 23:46:49
shinriyo @shinriyo

@alterakey 意外と"初めてのDjango"もまだでてませんが・・。

2011-12-19 00:14:25
Takahiro Yoshimura @alterakey

@shinriyo Djangoは日本では結構有名かと思います。このあたりとか…http://t.co/c5SspX38

2011-12-19 00:17:16
拡大
Takahiro Yoshimura @alterakey

@shinriyo Pyramidは基本的にHTTPリクエストを関数呼び出しにマッピングする機構のようなものです… DB・バリデータなどについても状況に応じて様々なライブラリを自分で選択して使って行きます。お手軽とは… 言いづらいのが本音です。

2011-12-19 00:02:04
shinriyo @shinriyo

@alterakey ありがとうございます。とりあえず、プロジェクト作成後のデフォルトのページとは別ページ1枚いけましたw

2011-12-19 00:06:19
Takahiro Yoshimura @alterakey

@shinriyo お疲れさまでした。Pyramidはドキュメントが散逸しがちなので、実例に主眼を置いて研究を進めていくと早いと思います。自分も一時期発狂しそうになりました。思い通りのことができるまで先は長いと思いますが、地道にやるのが一番です。がんばって。

2011-12-19 00:09:55
shinriyo @shinriyo

@alterakey Pyramidはわりとドキュメントは多いきがしますが順番がわかりませんので混乱します。

2011-12-19 00:10:53
Takahiro Yoshimura @alterakey

@shinriyo Pylonsの時からそうでしたから :-) あの界隈の「いつものこと」なんでしょうね…

2011-12-19 00:12:37
shinriyo @shinriyo

@alterakey まだ日本人のBlogも見ませんので

2011-12-19 00:13:09
Takahiro Yoshimura @alterakey

@shinriyo ないと思いますよw でもPyramidは速度と、ライブラリと干渉しづらい柔軟性が魅力ですね。nginx+uwsgiで動かしたら…

2011-12-19 00:15:19
shinriyo @shinriyo

@alterakey デフォルトでは何でうごいてるんでしょうか?wsgiref.hogeをインポートしてるみたいですが

2011-12-19 00:16:23
Takahiro Yoshimura @alterakey

@shinriyo Pyramid 1.3だと、開発用のサンドボックスはwsgirefです。本展開環境はいろいろ選べます。Apacheならmod_wsgi、nginxならuwsgiなど… これと言ったデフォルトはありません。この辺も実にPyramidらしいww

2011-12-19 00:20:32
shinriyo @shinriyo

@alterakey wsgirefだとPythonで実装されたHTTPサーバということですね?

2011-12-19 00:23:17
Takahiro Yoshimura @alterakey

@shinriyo そうですね。標準ライブラリにあるものです。WSGIのリファレンス実装なので、実運用には堪えないはずです。

2011-12-19 00:25:41