SlideShare a Scribd company logo
1 of 46
Download to read offline
使えるDjango1.4
               Django & Pyramid Con 2012
                       @hirokiky




12年9月14日金曜日
使えるDjango1.4

              • おまえだれよ (2m)
              • Django について (24m)
              • Django > 1.0の使えること (19m)

                               Speaker: @hirokiky
12年9月14日金曜日
使えるDjango1.4

              • おまえだれよ
              • Django について
              • Django > 1.0の使えること

                              Speaker: @hirokiky
12年9月14日金曜日
おまえだれよ

          • @hirokiky (清原 弘貴)
          • Weekend Programmer
          • Admin of djangoproject.jp

                                 Speaker: @hirokiky
12年9月14日金曜日
djangoproject.jp




                                          http://djangoproject.jp/
                   https://github.com/django-ja/djangoproject.jp/



                                     Speaker: @hirokiky
12年9月14日金曜日
使えるDjango1.4

              • おまえだれよ
              • Django について
              • Django > 1.0の使えること

                              Speaker: @hirokiky
12年9月14日金曜日
DjangoはPythonで書かれた
          オープンソースのWebフレームワーク




                      Speaker: @hirokiky
12年9月14日金曜日
Django製サイト

              • Disqus
              • Instagram
              • Mozilla
              • bitbucket

                            Speaker: @hirokiky
12年9月14日金曜日
WebServer              request


              Template              URL Dispatcher



      response             View

                          Model

                         DataBase

                                    Speaker: @hirokiky
12年9月14日金曜日
設計思想
              • ルースカップリング
              • コード量の低減
              • 迅速な開発
              • DRY(Don t repeat yourself)則
              • 暗示的より明示的に
              • 一貫性
              http://djangoproject.jp/doc/ja/1.0/misc/design-philosophies.html

                                                Speaker: @hirokiky
12年9月14日金曜日
Djangoの良いところ


              • オブジェクト管理インタフェース
              • フォーム処理ライブラリ
              • 汎用ビュー
                        Speaker: @hirokiky
12年9月14日金曜日
オブジェクト管理インタフェース
                     (Admin)




              • 管理インタフェースが動的に生成される
              • カスタマイズ性が高い

                           Speaker: @hirokiky
12年9月14日金曜日
Demo: Admin (15m)


              • プロジェクト作成 => 管理画面 (10m)
              • django-blog-zinniaの紹介 (5m)

                               Speaker: @hirokiky
12年9月14日金曜日
Read Docs
              and some codes


                      Speaker: @hirokiky
12年9月14日金曜日
使えるDjango1.4

              • おまえだれよ
              • Django について
              • Django > 1.0の使えること

                              Speaker: @hirokiky
12年9月14日金曜日
Django > 1.0

              • project template
              •   <del>Class Based View</del>




                                                Speaker: @hirokiky
12年9月14日金曜日
project template

   • Django>=1.4
   • template of project
              https://docs.djangoproject.com/en/dev/releases/1.4/#custom-project-and-app-templates




                                                        Speaker: @hirokiky
12年9月14日金曜日
project templateで?


              • 特定環境へのデプロイが楽
              • ノウハウをまとめておける


                          Speaker: @hirokiky
12年9月14日金曜日
色々めんどくさい

          • 開発/運用環境の切り分け(DEBUG
          • アプリケーションはproject/appsに置きたい
          • 依存パッケージの記述
          • 設定ファイルに書きたくない情報の扱い
              (SECRET_KEY, PASSWORD


                                 Speaker: @hirokiky
12年9月14日金曜日
これを『テンプレ』化




                    Speaker: @hirokiky
12年9月14日金曜日
使い方
  django-admin.py startproject --template=/path/to/template myproject




         --template=/path/to/template

                                                      ※URLも可


                                            Speaker: @hirokiky
12年9月14日金曜日
template
       ├──	
  fabfile.py
       ├──	
  gunicorn.py.ini
       ├──	
  manage.py
       ├──	
  Procfile
       ├──	
  reqs
       │	
  	
  	
  ├──	
  common.txt                 templateはこんな感じ
       │	
  	
  	
  ├──	
  dev.txt
       │	
  	
  	
  └──	
  prod.txt
       ├──	
  requirements.txt                           (ディレクトリ)
       ├──	
  project_name
       │	
  	
  	
  ├──	
  apps
       │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
       │	
  	
  	
  ├──	
  __init__.py
       │	
  	
  	
  ├──	
  libs
       │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
       │	
  	
  	
  ├──	
  settings
       │	
  	
  	
  │	
  	
  	
  ├──	
  common.py
       │	
  	
  	
  │	
  	
  	
  ├──	
  dev.py
       │	
  	
  	
  │	
  	
  	
  ├──	
  __init__.py
       │	
  	
  	
  │	
  	
  	
  └──	
  prod.py
       │	
  	
  	
  ├──	
  templates
       │	
  	
  	
  │	
  	
  	
  ├──	
  404.html
       │	
  	
  	
  │	
  	
  	
  └──	
  500.html
       │	
  	
  	
  └──	
  urls.py
       └──	
  wsgi.py
                                                         Speaker: @hirokiky
12年9月14日金曜日
template
       ├──	
  fabfile.py
       ├──	
  gunicorn.py.ini
       ├──	
  manage.py
       ├──	
  Procfile
       ├──	
  reqs
       │	
  	
  	
  ├──	
  common.txt                 templateはこんな感じ
       │	
  	
  	
  ├──	
  dev.txt
       │	
  	
  	
  └──	
  prod.txt
       ├──	
  requirements.txt                           (ディレクトリ)
       ├──	
  project_name
       │	
  	
  	
  ├──	
  apps
       │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
       │	
  	
  	
  ├──	
  __init__.py                  プロジェクト名に
       │	
  	
  	
  ├──	
  libs
       │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
       │	
  	
  	
  ├──	
  settings
                                                         置き換わる
       │	
  	
  	
  │	
  	
  	
  ├──	
  common.py
       │	
  	
  	
  │	
  	
  	
  ├──	
  dev.py
       │	
  	
  	
  │	
  	
  	
  ├──	
  __init__.py
       │	
  	
  	
  │	
  	
  	
  └──	
  prod.py
       │	
  	
  	
  ├──	
  templates
       │	
  	
  	
  │	
  	
  	
  ├──	
  404.html
       │	
  	
  	
  │	
  	
  	
  └──	
  500.html
       │	
  	
  	
  └──	
  urls.py
       └──	
  wsgi.py
                                                         Speaker: @hirokiky
12年9月14日金曜日
.pyファイルも
       if	
  __name__	
  ==	
  "__main__":
       	
  	
  	
  	
  os.environ.setdefault("DJANGO_SETTINGS_MODULE",	
  "{{	
  project_name	
  }}.settings.dev")

       	
  	
  	
  	
  from	
  django.core.management	
  import	
  execute_from_command_line

       	
  	
  	
  	
  execute_from_command_line(sys.argv)



                            • project_name
                            • project_directory
                            • secret_key
                            • あと自由にオプションで
                                                                            Speaker: @hirokiky
12年9月14日金曜日
要するに

          django/conf/project_templateの代わりに
          オレオレproject templateが使える




                             Speaker: @hirokiky
12年9月14日金曜日
例: django-skel

   • heroku + S3 環境
   • Django歴4年以上の開発者のノウハウがいっぱい

              https://github.com/rdegges/django-skel

                                 Speaker: @hirokiky
12年9月14日金曜日
Workflow


                  Speaker: @hirokiky
12年9月14日金曜日
開発まえ

              • startproject
              • git init
              • pip install -r reqs/dev.txt
              • sync, migrate, runserver

                                       Speaker: @hirokiky
12年9月14日金曜日
Hack some apps
               (not projects)

                       Speaker: @hirokiky
12年9月14日金曜日
運用まで

              • fab	
  bootstrap

              • heroku	
  config:add

              • heroku	
  scale
              • collectstatic	
  &&	
  compress

                                       Speaker: @hirokiky
12年9月14日金曜日
オツカレチャ━━━━( ́ `)━━━━ン!!!!




                         Speaker: @hirokiky
12年9月14日金曜日
django-skelからノウハウを学ぶ



          • 開発/運用環境の切り分け
          • appsディレクトリ

                     Speaker: @hirokiky
12年9月14日金曜日
django-­‐skel
              ├──	
  fabfile.py
              ├──	
  gunicorn.py.ini
              ├──	
  manage.py
              ├──	
  Procfile
              ├──	
  reqs
              │	
  	
  	
  ├──	
  common.txt
              │	
  	
  	
  ├──	
  dev.txt
              │	
  	
  	
  └──	
  prod.txt
              ├──	
  requirements.txt
              ├──	
  project_name
              │	
  	
  	
  ├──	
  apps
                                                             django-skel
              │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
              │	
  	
  	
  ├──	
  __init__.py
              │	
  	
  	
  ├──	
  libs                       のレイアウト
              │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
              │	
  	
  	
  ├──	
  settings
              │	
  	
  	
  │	
  	
  	
  ├──	
  common.py
              │	
  	
  	
  │	
  	
  	
  ├──	
  dev.py
              │	
  	
  	
  │	
  	
  	
  ├──	
  __init__.py
              │	
  	
  	
  │	
  	
  	
  └──	
  prod.py
              │	
  	
  	
  ├──	
  templates
              │	
  	
  	
  │	
  	
  	
  ├──	
  404.html
              │	
  	
  	
  │	
  	
  	
  └──	
  500.html
              │	
  	
  	
  └──	
  urls.py
              └──	
  wsgi.py
                                                               Speaker: @hirokiky
12年9月14日金曜日
環境の切り分け


              • 開発、運用環境をうまく切り替えたい
              • settings.DEBUGをハードコードは最悪


                              Speaker: @hirokiky
12年9月14日金曜日
django-skelでは?
                        ├──	
  settings
                        │	
  	
  	
  │	
  	
  	
  ├──	
  __init__.py
                        │	
  	
  	
  │	
  	
  	
  ├──	
  common.py
                        │	
  	
  	
  │	
  	
  	
  ├──	
  dev.py
                        │	
  	
  	
  │	
  	
  	
  └──	
  prod.py



        • 開発のみの設定はdev、運用はprod、共通がcommon
        •     heroku	
  config:add	
  
              DJANGO_SETTINGS_MODULE={{	
  project_name	
  }}.settings.prod




                                                          Speaker: @hirokiky
12年9月14日金曜日
apps


              • アプリケーションをいれる
              • import時の名前の衝突を防ぐ


                           Speaker: @hirokiky
12年9月14日金曜日
django-­‐skel
   ├──	
  fabfile.py
   ├──	
  gunicorn.py.ini
   ├──	
  manage.py
   ├──	
  Procfile
   ├──	
  reqs
   │	
  	
  	
  ├──	
  common.txt
   │	
  	
  	
  ├──	
  dev.txt
   │	
  	
  	
  └──	
  prod.txt
   ├──	
  requirements.txt
   ├──	
  project_name
   │	
  	
  	
  ├──	
  apps                       django-skelのここ
   │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
   │	
  	
  	
  ├──	
  __init__.py
   │	
  	
  	
  ├──	
  libs
   │	
  	
  	
  │	
  	
  	
  └──	
  __init__.py
   │	
  	
  	
  ├──	
  settings
   │	
  	
  	
  │	
  	
  	
  ├──	
  common.py
   │	
  	
  	
  │	
  	
  	
  ├──	
  dev.py
   │	
  	
  	
  │	
  	
  	
  ├──	
  __init__.py
   │	
  	
  	
  │	
  	
  	
  └──	
  prod.py
   │	
  	
  	
  ├──	
  templates
   │	
  	
  	
  │	
  	
  	
  ├──	
  404.html
   │	
  	
  	
  │	
  	
  	
  └──	
  500.html
   │	
  	
  	
  └──	
  urls.py
   └──	
  wsgi.py
                                                      Speaker: @hirokiky
12年9月14日金曜日
.	
  #	
  ここにpath
  |-­‐-­‐	
  aggregator
  |	
  	
  	
  |-­‐-­‐	
  __init__.py
  |	
  	
  	
  |-­‐-­‐	
  blog.py
                                            apps無しの例
  |	
  	
  	
  |-­‐-­‐	
  models.py
  |	
  	
  	
  |-­‐-­‐	
  tests.py
  |	
  	
  	
  `-­‐-­‐	
  views.py
  |-­‐-­‐	
  blog

                                           • aggregator.viewsで
  |	
  	
  	
  |-­‐-­‐	
  __init__.py
  |	
  	
  	
  |-­‐-­‐	
  models.py
  |	
  	
  	
  |-­‐-­‐	
  tests.py

                                           • from blog.models import Entry
  |	
  	
  	
  `-­‐-­‐	
  views.py
  |-­‐-­‐	
  manage.py
  `-­‐-­‐	
  myprj
  	
  	
  	
  	
  |-­‐-­‐	
  __init__.py
  	
  	
  	
  	
  |-­‐-­‐	
  settings.py
  	
  	
  	
  	
  |-­‐-­‐	
  urls.py
                                           • ImportError
  	
  	
  	
  	
  `-­‐-­‐	
  wsgi.py



                                                      Speaker: @hirokiky
12年9月14日金曜日
.	
  #	
  ここにpath
  |-­‐-­‐	
  apps
  |	
  	
  	
  |-­‐-­‐	
  __init__.py
  |	
  	
  	
  |-­‐-­‐	
  aggregator
  |	
  	
  	
  |	
  	
  	
  |-­‐-­‐	
  __init__.py
                                                            そこでapps
  |	
  	
  	
  |	
  	
  	
  |-­‐-­‐	
  blog.py
  |	
  	
  	
  |	
  	
  	
  |-­‐-­‐	
  models.py
  |	
  	
  	
  |	
  	
  	
  |-­‐-­‐	
  tests.py
  |	
  	
  	
  |	
  	
  	
  `-­‐-­‐	
  views.py
  |	
  	
  	
  `-­‐-­‐	
  blog
  |	
  	
  	
  	
  	
  	
  	
  |-­‐-­‐	
  __init__.py
  |	
  	
  	
  	
  	
  	
  	
  |-­‐-­‐	
  models.py
  |	
  	
  	
  	
  	
  	
  	
  |-­‐-­‐	
  tests.py
  |	
  	
  	
  	
  	
  	
  	
  `-­‐-­‐	
  views.py
  |-­‐-­‐	
  manage.py
                                                        •   from apps.blog.model import Entry
  `-­‐-­‐	
  myprj
  	
  	
  	
  	
  |-­‐-­‐	
  __init__.py
  	
  	
  	
  	
  |-­‐-­‐	
  settings.py
  	
  	
  	
  	
  |-­‐-­‐	
  urls.py
  	
  	
  	
  	
  `-­‐-­‐	
  wsgi.py


                                                                     Speaker: @hirokiky
12年9月14日金曜日
project templateで?


              • 特定環境へのデプロイが楽
              • ノウハウをまとめておける


                          Speaker: @hirokiky
12年9月14日金曜日
Django1.4の良さは {% elif %} だけ
                        じゃない




                              Speaker: @hirokiky
12年9月14日金曜日
Announce

      • DjangoSprintやります
      • PyConJP 3日目
      • 自由に
      • http://2012.pycon.jp/program/sprints.html

                               Speaker: @hirokiky
12年9月14日金曜日
以上


               Speaker: @hirokiky
12年9月14日金曜日
Any questions?


                      Speaker: @hirokiky
12年9月14日金曜日
参考資料

              • djangoproject.jp
              • djangoproject.com
              • django-blog-zinnia
              • django-skel

                                     Speaker: @hirokiky
12年9月14日金曜日
なんで Django > 1.0

              • 日本語ドキュメントが長らく1.0
              • Django1.4ドキュメント翻訳作業中
              • django-docs-ja
                    https://github.com/django-docs-ja/django-docs-ja




                                         Speaker: @hirokiky
12年9月14日金曜日

More Related Content

What's hot

Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介Shinya Okano
 
Spring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersSpring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersTakuma Watabiki
 
FuelPHP活用事例
FuelPHP活用事例FuelPHP活用事例
FuelPHP活用事例Yusuke Naka
 
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い sasezaki
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Atsuo Ishimoto
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementationsmasahitojp
 
Python charity talk in japan fastAPI introduction
Python charity talk in japan fastAPI introductionPython charity talk in japan fastAPI introduction
Python charity talk in japan fastAPI introductionssuserc75dc7
 
Start python with fastapi
Start python with fastapiStart python with fastapi
Start python with fastapiku_taka
 
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―shinjiigarashi
 
ドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkinsドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkinsGo Sueyoshi (a.k.a sue445)
 
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaMasayuki Ishikawa
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
GradleどうでしょうTakuma Watabiki
 
システム開発を前進させるためのGradle導入法
システム開発を前進させるためのGradle導入法システム開発を前進させるためのGradle導入法
システム開発を前進させるためのGradle導入法Takuma Watabiki
 
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツールPyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツールAtsuo Ishimoto
 
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokaiGo Sueyoshi (a.k.a sue445)
 
Python におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころPython におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころJunya Hayashi
 
PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料Junichi Ishida
 
Javascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScriptJavascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScriptKazufumi Ohkawa
 

What's hot (20)

Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介
 
Spring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersSpring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswers
 
FuelPHP活用事例
FuelPHP活用事例FuelPHP活用事例
FuelPHP活用事例
 
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
 
ECMAScript没proposal追悼式
ECMAScript没proposal追悼式ECMAScript没proposal追悼式
ECMAScript没proposal追悼式
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementations
 
Python charity talk in japan fastAPI introduction
Python charity talk in japan fastAPI introductionPython charity talk in japan fastAPI introduction
Python charity talk in japan fastAPI introduction
 
Start python with fastapi
Start python with fastapiStart python with fastapi
Start python with fastapi
 
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
 
ドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkinsドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkins
 
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
Gradleどうでしょう
 
システム開発を前進させるためのGradle導入法
システム開発を前進させるためのGradle導入法システム開発を前進させるためのGradle導入法
システム開発を前進させるためのGradle導入法
 
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツールPyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
PyCon JP 2012 hands-on セッション/ FlaskによるWebアプリケーションの実装とプログラミングツール
 
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
 
Python におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころPython におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころ
 
PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料
 
Javascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScriptJavascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScript
 
ドリコムのインフラCI
ドリコムのインフラCIドリコムのインフラCI
ドリコムのインフラCI
 

Similar to 使えるDjango1.4

Golangによるubicの試作
Golangによるubicの試作Golangによるubicの試作
Golangによるubicの試作kn1kn1
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションTetsuya Morimoto
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む2bo 2bo
 
Go言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンドGo言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンドAtsushi Yasuda
 
130329 perl casual_ruik
130329 perl casual_ruik130329 perl casual_ruik
130329 perl casual_ruikRui Kimura
 
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for PerlChiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for PerlHideaki Ohno
 
Hatena blogdevelopmentflow
Hatena blogdevelopmentflowHatena blogdevelopmentflow
Hatena blogdevelopmentflowYasuhiro Onishi
 
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」博文 斉藤
 
concrete5 テーマ作成ハンズオン (Ver5.6 まで)
concrete5 テーマ作成ハンズオン (Ver5.6 まで)concrete5 テーマ作成ハンズオン (Ver5.6 まで)
concrete5 テーマ作成ハンズオン (Ver5.6 まで)Katz Ueno
 
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」博文 斉藤
 
実践Go ツールの作成から配布まで
実践Go ツールの作成から配布まで実践Go ツールの作成から配布まで
実践Go ツールの作成から配布までYusuke Miyake
 
「モダンPerl入門」の入門
「モダンPerl入門」の入門「モダンPerl入門」の入門
「モダンPerl入門」の入門Songhee Han
 
Testing in Sinatra
Testing in SinatraTesting in Sinatra
Testing in SinatraUchio Kondo
 
個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編Koichi Shiraishi
 
Introduce that Best practices for writing Dockerfiles
Introduce that Best practices for writing DockerfilesIntroduce that Best practices for writing Dockerfiles
Introduce that Best practices for writing DockerfilesYukiya Hayashi
 
Fuel phpをcomposerに本気で対応させた時の話
Fuel phpをcomposerに本気で対応させた時の話Fuel phpをcomposerに本気で対応させた時の話
Fuel phpをcomposerに本気で対応させた時の話Keishi Hosoba
 

Similar to 使えるDjango1.4 (20)

Golangによるubicの試作
Golangによるubicの試作Golangによるubicの試作
Golangによるubicの試作
 
210630 python
210630 python210630 python
210630 python
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
Go言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンドGo言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンド
 
130329 perl casual_ruik
130329 perl casual_ruik130329 perl casual_ruik
130329 perl casual_ruik
 
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for PerlChiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
 
Hatena blogdevelopmentflow
Hatena blogdevelopmentflowHatena blogdevelopmentflow
Hatena blogdevelopmentflow
 
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
 
concrete5 テーマ作成ハンズオン (Ver5.6 まで)
concrete5 テーマ作成ハンズオン (Ver5.6 まで)concrete5 テーマ作成ハンズオン (Ver5.6 まで)
concrete5 テーマ作成ハンズオン (Ver5.6 まで)
 
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
 
実践Go ツールの作成から配布まで
実践Go ツールの作成から配布まで実践Go ツールの作成から配布まで
実践Go ツールの作成から配布まで
 
「モダンPerl入門」の入門
「モダンPerl入門」の入門「モダンPerl入門」の入門
「モダンPerl入門」の入門
 
Djangoのススメ
DjangoのススメDjangoのススメ
Djangoのススメ
 
RgGen ご紹介
RgGen ご紹介RgGen ご紹介
RgGen ご紹介
 
Go入門
Go入門Go入門
Go入門
 
Testing in Sinatra
Testing in SinatraTesting in Sinatra
Testing in Sinatra
 
個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編個人で作っているgoのプロダクト by zchee編
個人で作っているgoのプロダクト by zchee編
 
Introduce that Best practices for writing Dockerfiles
Introduce that Best practices for writing DockerfilesIntroduce that Best practices for writing Dockerfiles
Introduce that Best practices for writing Dockerfiles
 
Fuel phpをcomposerに本気で対応させた時の話
Fuel phpをcomposerに本気で対応させた時の話Fuel phpをcomposerに本気で対応させた時の話
Fuel phpをcomposerに本気で対応させた時の話
 

More from hirokiky

簡単な算数でできる文章校正
簡単な算数でできる文章校正簡単な算数でできる文章校正
簡単な算数でできる文章校正hirokiky
 
エンジニアが起業のアイディアを見つける方法
エンジニアが起業のアイディアを見つける方法エンジニアが起業のアイディアを見つける方法
エンジニアが起業のアイディアを見つける方法hirokiky
 
それ、公開しちゃおうよ - みんなのPython勉強会63登壇
それ、公開しちゃおうよ - みんなのPython勉強会63登壇それ、公開しちゃおうよ - みんなのPython勉強会63登壇
それ、公開しちゃおうよ - みんなのPython勉強会63登壇hirokiky
 
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017hirokiky
 
営業も広報もいない僕たちが11年間やってきたこと
営業も広報もいない僕たちが11年間やってきたこと営業も広報もいない僕たちが11年間やってきたこと
営業も広報もいない僕たちが11年間やってきたことhirokiky
 
LLoT ランゲージアップデート Python
LLoT ランゲージアップデート PythonLLoT ランゲージアップデート Python
LLoT ランゲージアップデート Pythonhirokiky
 
How we realized SOA by Python at PyCon JP 2015
How we realized SOA by Python at PyCon JP 2015How we realized SOA by Python at PyCon JP 2015
How we realized SOA by Python at PyCon JP 2015hirokiky
 
価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96hirokiky
 
Pycon2014 django performance
Pycon2014 django performancePycon2014 django performance
Pycon2014 django performancehirokiky
 
gargant.dispatch, a flexible dispatcher for WSGI
gargant.dispatch, a flexible dispatcher for WSGIgargant.dispatch, a flexible dispatcher for WSGI
gargant.dispatch, a flexible dispatcher for WSGIhirokiky
 
Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013hirokiky
 
軽量のススメ
軽量のススメ軽量のススメ
軽量のススメhirokiky
 
django-websettingsの紹介
django-websettingsの紹介django-websettingsの紹介
django-websettingsの紹介hirokiky
 
pyramid_layoutと僕と、ときどきzope.interface
pyramid_layoutと僕と、ときどきzope.interfacepyramid_layoutと僕と、ときどきzope.interface
pyramid_layoutと僕と、ときどきzope.interfacehirokiky
 
My pyhack 1301
My pyhack 1301My pyhack 1301
My pyhack 1301hirokiky
 
個人の嗜好を学習し記事を推奨するフィードリーダ
個人の嗜好を学習し記事を推奨するフィードリーダ個人の嗜好を学習し記事を推奨するフィードリーダ
個人の嗜好を学習し記事を推奨するフィードリーダhirokiky
 
卒研中間発表資料:個人に最適化したフィードリーダの構築
卒研中間発表資料:個人に最適化したフィードリーダの構築卒研中間発表資料:個人に最適化したフィードリーダの構築
卒研中間発表資料:個人に最適化したフィードリーダの構築hirokiky
 

More from hirokiky (17)

簡単な算数でできる文章校正
簡単な算数でできる文章校正簡単な算数でできる文章校正
簡単な算数でできる文章校正
 
エンジニアが起業のアイディアを見つける方法
エンジニアが起業のアイディアを見つける方法エンジニアが起業のアイディアを見つける方法
エンジニアが起業のアイディアを見つける方法
 
それ、公開しちゃおうよ - みんなのPython勉強会63登壇
それ、公開しちゃおうよ - みんなのPython勉強会63登壇それ、公開しちゃおうよ - みんなのPython勉強会63登壇
それ、公開しちゃおうよ - みんなのPython勉強会63登壇
 
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017
プロダクト開発してわかったDjangoの深〜いパーミッション管理の話 @ PyconJP2017
 
営業も広報もいない僕たちが11年間やってきたこと
営業も広報もいない僕たちが11年間やってきたこと営業も広報もいない僕たちが11年間やってきたこと
営業も広報もいない僕たちが11年間やってきたこと
 
LLoT ランゲージアップデート Python
LLoT ランゲージアップデート PythonLLoT ランゲージアップデート Python
LLoT ランゲージアップデート Python
 
How we realized SOA by Python at PyCon JP 2015
How we realized SOA by Python at PyCon JP 2015How we realized SOA by Python at PyCon JP 2015
How we realized SOA by Python at PyCon JP 2015
 
価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96
 
Pycon2014 django performance
Pycon2014 django performancePycon2014 django performance
Pycon2014 django performance
 
gargant.dispatch, a flexible dispatcher for WSGI
gargant.dispatch, a flexible dispatcher for WSGIgargant.dispatch, a flexible dispatcher for WSGI
gargant.dispatch, a flexible dispatcher for WSGI
 
Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013
 
軽量のススメ
軽量のススメ軽量のススメ
軽量のススメ
 
django-websettingsの紹介
django-websettingsの紹介django-websettingsの紹介
django-websettingsの紹介
 
pyramid_layoutと僕と、ときどきzope.interface
pyramid_layoutと僕と、ときどきzope.interfacepyramid_layoutと僕と、ときどきzope.interface
pyramid_layoutと僕と、ときどきzope.interface
 
My pyhack 1301
My pyhack 1301My pyhack 1301
My pyhack 1301
 
個人の嗜好を学習し記事を推奨するフィードリーダ
個人の嗜好を学習し記事を推奨するフィードリーダ個人の嗜好を学習し記事を推奨するフィードリーダ
個人の嗜好を学習し記事を推奨するフィードリーダ
 
卒研中間発表資料:個人に最適化したフィードリーダの構築
卒研中間発表資料:個人に最適化したフィードリーダの構築卒研中間発表資料:個人に最適化したフィードリーダの構築
卒研中間発表資料:個人に最適化したフィードリーダの構築
 

使えるDjango1.4

  • 1. 使えるDjango1.4 Django & Pyramid Con 2012 @hirokiky 12年9月14日金曜日
  • 2. 使えるDjango1.4 • おまえだれよ (2m) • Django について (24m) • Django > 1.0の使えること (19m) Speaker: @hirokiky 12年9月14日金曜日
  • 3. 使えるDjango1.4 • おまえだれよ • Django について • Django > 1.0の使えること Speaker: @hirokiky 12年9月14日金曜日
  • 4. おまえだれよ • @hirokiky (清原 弘貴) • Weekend Programmer • Admin of djangoproject.jp Speaker: @hirokiky 12年9月14日金曜日
  • 5. djangoproject.jp http://djangoproject.jp/ https://github.com/django-ja/djangoproject.jp/ Speaker: @hirokiky 12年9月14日金曜日
  • 6. 使えるDjango1.4 • おまえだれよ • Django について • Django > 1.0の使えること Speaker: @hirokiky 12年9月14日金曜日
  • 7. DjangoはPythonで書かれた オープンソースのWebフレームワーク Speaker: @hirokiky 12年9月14日金曜日
  • 8. Django製サイト • Disqus • Instagram • Mozilla • bitbucket Speaker: @hirokiky 12年9月14日金曜日
  • 9. WebServer request Template URL Dispatcher response View Model DataBase Speaker: @hirokiky 12年9月14日金曜日
  • 10. 設計思想 • ルースカップリング • コード量の低減 • 迅速な開発 • DRY(Don t repeat yourself)則 • 暗示的より明示的に • 一貫性 http://djangoproject.jp/doc/ja/1.0/misc/design-philosophies.html Speaker: @hirokiky 12年9月14日金曜日
  • 11. Djangoの良いところ • オブジェクト管理インタフェース • フォーム処理ライブラリ • 汎用ビュー Speaker: @hirokiky 12年9月14日金曜日
  • 12. オブジェクト管理インタフェース (Admin) • 管理インタフェースが動的に生成される • カスタマイズ性が高い Speaker: @hirokiky 12年9月14日金曜日
  • 13. Demo: Admin (15m) • プロジェクト作成 => 管理画面 (10m) • django-blog-zinniaの紹介 (5m) Speaker: @hirokiky 12年9月14日金曜日
  • 14. Read Docs and some codes Speaker: @hirokiky 12年9月14日金曜日
  • 15. 使えるDjango1.4 • おまえだれよ • Django について • Django > 1.0の使えること Speaker: @hirokiky 12年9月14日金曜日
  • 16. Django > 1.0 • project template • <del>Class Based View</del> Speaker: @hirokiky 12年9月14日金曜日
  • 17. project template • Django>=1.4 • template of project https://docs.djangoproject.com/en/dev/releases/1.4/#custom-project-and-app-templates Speaker: @hirokiky 12年9月14日金曜日
  • 18. project templateで? • 特定環境へのデプロイが楽 • ノウハウをまとめておける Speaker: @hirokiky 12年9月14日金曜日
  • 19. 色々めんどくさい • 開発/運用環境の切り分け(DEBUG • アプリケーションはproject/appsに置きたい • 依存パッケージの記述 • 設定ファイルに書きたくない情報の扱い (SECRET_KEY, PASSWORD Speaker: @hirokiky 12年9月14日金曜日
  • 20. これを『テンプレ』化 Speaker: @hirokiky 12年9月14日金曜日
  • 21. 使い方 django-admin.py startproject --template=/path/to/template myproject --template=/path/to/template ※URLも可 Speaker: @hirokiky 12年9月14日金曜日
  • 22. template ├──  fabfile.py ├──  gunicorn.py.ini ├──  manage.py ├──  Procfile ├──  reqs │      ├──  common.txt templateはこんな感じ │      ├──  dev.txt │      └──  prod.txt ├──  requirements.txt (ディレクトリ) ├──  project_name │      ├──  apps │      │      └──  __init__.py │      ├──  __init__.py │      ├──  libs │      │      └──  __init__.py │      ├──  settings │      │      ├──  common.py │      │      ├──  dev.py │      │      ├──  __init__.py │      │      └──  prod.py │      ├──  templates │      │      ├──  404.html │      │      └──  500.html │      └──  urls.py └──  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 23. template ├──  fabfile.py ├──  gunicorn.py.ini ├──  manage.py ├──  Procfile ├──  reqs │      ├──  common.txt templateはこんな感じ │      ├──  dev.txt │      └──  prod.txt ├──  requirements.txt (ディレクトリ) ├──  project_name │      ├──  apps │      │      └──  __init__.py │      ├──  __init__.py プロジェクト名に │      ├──  libs │      │      └──  __init__.py │      ├──  settings 置き換わる │      │      ├──  common.py │      │      ├──  dev.py │      │      ├──  __init__.py │      │      └──  prod.py │      ├──  templates │      │      ├──  404.html │      │      └──  500.html │      └──  urls.py └──  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 24. .pyファイルも if  __name__  ==  "__main__":        os.environ.setdefault("DJANGO_SETTINGS_MODULE",  "{{  project_name  }}.settings.dev")        from  django.core.management  import  execute_from_command_line        execute_from_command_line(sys.argv) • project_name • project_directory • secret_key • あと自由にオプションで Speaker: @hirokiky 12年9月14日金曜日
  • 25. 要するに django/conf/project_templateの代わりに オレオレproject templateが使える Speaker: @hirokiky 12年9月14日金曜日
  • 26. 例: django-skel • heroku + S3 環境 • Django歴4年以上の開発者のノウハウがいっぱい https://github.com/rdegges/django-skel Speaker: @hirokiky 12年9月14日金曜日
  • 27. Workflow Speaker: @hirokiky 12年9月14日金曜日
  • 28. 開発まえ • startproject • git init • pip install -r reqs/dev.txt • sync, migrate, runserver Speaker: @hirokiky 12年9月14日金曜日
  • 29. Hack some apps (not projects) Speaker: @hirokiky 12年9月14日金曜日
  • 30. 運用まで • fab  bootstrap • heroku  config:add • heroku  scale • collectstatic  &&  compress Speaker: @hirokiky 12年9月14日金曜日
  • 31. オツカレチャ━━━━( ́ `)━━━━ン!!!! Speaker: @hirokiky 12年9月14日金曜日
  • 32. django-skelからノウハウを学ぶ • 開発/運用環境の切り分け • appsディレクトリ Speaker: @hirokiky 12年9月14日金曜日
  • 33. django-­‐skel ├──  fabfile.py ├──  gunicorn.py.ini ├──  manage.py ├──  Procfile ├──  reqs │      ├──  common.txt │      ├──  dev.txt │      └──  prod.txt ├──  requirements.txt ├──  project_name │      ├──  apps django-skel │      │      └──  __init__.py │      ├──  __init__.py │      ├──  libs のレイアウト │      │      └──  __init__.py │      ├──  settings │      │      ├──  common.py │      │      ├──  dev.py │      │      ├──  __init__.py │      │      └──  prod.py │      ├──  templates │      │      ├──  404.html │      │      └──  500.html │      └──  urls.py └──  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 34. 環境の切り分け • 開発、運用環境をうまく切り替えたい • settings.DEBUGをハードコードは最悪 Speaker: @hirokiky 12年9月14日金曜日
  • 35. django-skelでは? ├──  settings │      │      ├──  __init__.py │      │      ├──  common.py │      │      ├──  dev.py │      │      └──  prod.py • 開発のみの設定はdev、運用はprod、共通がcommon • heroku  config:add   DJANGO_SETTINGS_MODULE={{  project_name  }}.settings.prod Speaker: @hirokiky 12年9月14日金曜日
  • 36. apps • アプリケーションをいれる • import時の名前の衝突を防ぐ Speaker: @hirokiky 12年9月14日金曜日
  • 37. django-­‐skel ├──  fabfile.py ├──  gunicorn.py.ini ├──  manage.py ├──  Procfile ├──  reqs │      ├──  common.txt │      ├──  dev.txt │      └──  prod.txt ├──  requirements.txt ├──  project_name │      ├──  apps django-skelのここ │      │      └──  __init__.py │      ├──  __init__.py │      ├──  libs │      │      └──  __init__.py │      ├──  settings │      │      ├──  common.py │      │      ├──  dev.py │      │      ├──  __init__.py │      │      └──  prod.py │      ├──  templates │      │      ├──  404.html │      │      └──  500.html │      └──  urls.py └──  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 38. .  #  ここにpath |-­‐-­‐  aggregator |      |-­‐-­‐  __init__.py |      |-­‐-­‐  blog.py apps無しの例 |      |-­‐-­‐  models.py |      |-­‐-­‐  tests.py |      `-­‐-­‐  views.py |-­‐-­‐  blog • aggregator.viewsで |      |-­‐-­‐  __init__.py |      |-­‐-­‐  models.py |      |-­‐-­‐  tests.py • from blog.models import Entry |      `-­‐-­‐  views.py |-­‐-­‐  manage.py `-­‐-­‐  myprj        |-­‐-­‐  __init__.py        |-­‐-­‐  settings.py        |-­‐-­‐  urls.py • ImportError        `-­‐-­‐  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 39. .  #  ここにpath |-­‐-­‐  apps |      |-­‐-­‐  __init__.py |      |-­‐-­‐  aggregator |      |      |-­‐-­‐  __init__.py そこでapps |      |      |-­‐-­‐  blog.py |      |      |-­‐-­‐  models.py |      |      |-­‐-­‐  tests.py |      |      `-­‐-­‐  views.py |      `-­‐-­‐  blog |              |-­‐-­‐  __init__.py |              |-­‐-­‐  models.py |              |-­‐-­‐  tests.py |              `-­‐-­‐  views.py |-­‐-­‐  manage.py • from apps.blog.model import Entry `-­‐-­‐  myprj        |-­‐-­‐  __init__.py        |-­‐-­‐  settings.py        |-­‐-­‐  urls.py        `-­‐-­‐  wsgi.py Speaker: @hirokiky 12年9月14日金曜日
  • 40. project templateで? • 特定環境へのデプロイが楽 • ノウハウをまとめておける Speaker: @hirokiky 12年9月14日金曜日
  • 41. Django1.4の良さは {% elif %} だけ じゃない Speaker: @hirokiky 12年9月14日金曜日
  • 42. Announce • DjangoSprintやります • PyConJP 3日目 • 自由に • http://2012.pycon.jp/program/sprints.html Speaker: @hirokiky 12年9月14日金曜日
  • 43. 以上 Speaker: @hirokiky 12年9月14日金曜日
  • 44. Any questions? Speaker: @hirokiky 12年9月14日金曜日
  • 45. 参考資料 • djangoproject.jp • djangoproject.com • django-blog-zinnia • django-skel Speaker: @hirokiky 12年9月14日金曜日
  • 46. なんで Django > 1.0 • 日本語ドキュメントが長らく1.0 • Django1.4ドキュメント翻訳作業中 • django-docs-ja https://github.com/django-docs-ja/django-docs-ja Speaker: @hirokiky 12年9月14日金曜日