感想
いままでPythonで遊んでて、知ってはいたけど使ってなかったDjangoを使い始めるよいきっかけとなりました。特にハンズオンではどの入門書でも触れるような箇所は余り触れずにむしろ入門書後に躓くような部分をわりと多く教えてもらったのでかなり有意義でした。次回以降、Python温泉とかにも参加したいですね。
Django Hands-on
基本的なところ
- manage.pyを使うとき
$ python manage.py help # 使い方 $ python manage.py syncdb # DBとModelのsync $ python manage.py shell # シェルモード $ python manage.py runserver # テストサーバ起動 $ python manage.py sql # 発行しているSQL確認
- urls.pyで注意
- 括弧を使うと関数への引数として渡してしまうよ
- プロジェクトルートのurls.pyではadmin.autodiscover()で各アプリのadmin.pyを読み込んでくれます
admin.py
各アプリのadmin.pyでadmin.site.register()で登録された場合のみ上記のadmin.autodiscover()で認識されます
views.py
Djangoで言うところのviewは一般的なMVCパターンでのControllerに対応します。Modelはmodel, Viewはテンプレートに対応します。(MVTパターンと呼んでいるらしい)
forms.py
form.ModelFormを利用することでModelからフォームを自動生成できます。
Middleware
リクエストからView、Viewからリプライまでの間で何らかの処理をしたいときに実装する。(IPアドレスではじいたりとか)慣習的にはアプリの下に作る場合はmiddleware.pyというファイルを作ってやって、その中にクラスを実装してやれば良いです。
Djangoの便利サイト
アプリとか
Lightning Session
途中ハンズオンの課題やっててあんまメモとれなかったです(発表者の方々すみません!)
JQuery & JQuery UI(文殊堂さん)
またこれにはAIR版があるのでさらに便利。
必要なUIのコードだけまとめて1つのJSにしてくれる。
テーマをGUIで設定して落とせる。
時刻入力用のGUI
Django & Flash(大塚さん)
- 大塚さんのお仕事
- AMF(Action Message Format)とは
- バイナリ形式のFlashとサーバ間の通信データフォーマット
- パフォーマンスが高い
- DjangoAMF - Django AMF
- Pythonとの絡み
- Django AMF
- PyAMF
- AMFast
西尾泰和さん
- 最中限
- RDBの考えでGAE内の分散DBにデータを取りに行くと落とし穴がある。(countが高コストの処理になったり)
- イクノザマ
- app-engine-patchを使うと便利
- スパゲティーモンスター
酒徳さん
- OpenSocialの時代がやってきた
- Facebookではすでに戦争が起きている
- 一発あてて金儲けしようぜ
追記
LTのところで酒徳さんの名前間違えてました >< すみません! 常山さんありがとうございました。