Enviar pesquisa
Carregar
Django 1.9
•
2 gostaram
•
8,368 visualizações
OMEGA (@equal_001)
Seguir
Django 1.9で追加されたメジャー機能の紹介 (だいたい)新卒エンジニア向け技術交流会 vol.5
Leia menos
Leia mais
Engenharia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 37
Baixar agora
Baixar para ler offline
Recomendados
Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013
hirokiky
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
Shinya Okano
Python札幌201406
Python札幌201406
Shinya Okano
Windowsにpythonをインストールしてみよう
Windowsにpythonをインストールしてみよう
Kenji NAKAGAKI
Pyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Takuya Ueda
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
Djangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHue
Shinya Okano
Recomendados
Django最速デバッグ指南 PyConAPAC 2013
Django最速デバッグ指南 PyConAPAC 2013
hirokiky
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
Shinya Okano
Python札幌201406
Python札幌201406
Shinya Okano
Windowsにpythonをインストールしてみよう
Windowsにpythonをインストールしてみよう
Kenji NAKAGAKI
Pyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Takuya Ueda
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
Djangoエンジニアの観点から見たHue
Djangoエンジニアの観点から見たHue
Shinya Okano
GAE/GoでLINE Messaging API を使う
GAE/GoでLINE Messaging API を使う
Takuya Ueda
サードパーティパッケージの歩き方
サードパーティパッケージの歩き方
Takesxi Sximada
Javascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScript
Kazufumi Ohkawa
20120915 Pythonは本当にBlenderの役に立っているか?
20120915 Pythonは本当にBlenderの役に立っているか?
Tetsuo Mitsuda
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
久しぶりのPythonでgoogleのアレを制御してみた
久しぶりのPythonでgoogleのアレを制御してみた
Shohei Tai
Stapy#17LT
Stapy#17LT
drillan
勉強会 Cvml python基礎
勉強会 Cvml python基礎
真哉 杉野
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
DartPad+CodePenで、Flutterを体験してみよう
DartPad+CodePenで、Flutterを体験してみよう
cch-robo
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
Takuya Ueda
Pynyumon03 LT
Pynyumon03 LT
drillan
Python3 プログラミング勉強会
Python3 プログラミング勉強会
Tetsuya Morimoto
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Shinya Okano
Go modules
Go modules
YoshitomoYasuno
Pyladies tokyo 2nd anniversary LT
Pyladies tokyo 2nd anniversary LT
drillan
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Takuya Ueda
Gitはじめの一歩
Gitはじめの一歩
Ayana Yokota
Django pgroonga
Django pgroonga
Atsuo Ishimoto
Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門
Takayuki Shimizukawa
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
OMEGA (@equal_001)
Mais conteúdo relacionado
Mais procurados
GAE/GoでLINE Messaging API を使う
GAE/GoでLINE Messaging API を使う
Takuya Ueda
サードパーティパッケージの歩き方
サードパーティパッケージの歩き方
Takesxi Sximada
Javascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScript
Kazufumi Ohkawa
20120915 Pythonは本当にBlenderの役に立っているか?
20120915 Pythonは本当にBlenderの役に立っているか?
Tetsuo Mitsuda
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
久しぶりのPythonでgoogleのアレを制御してみた
久しぶりのPythonでgoogleのアレを制御してみた
Shohei Tai
Stapy#17LT
Stapy#17LT
drillan
勉強会 Cvml python基礎
勉強会 Cvml python基礎
真哉 杉野
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
DartPad+CodePenで、Flutterを体験してみよう
DartPad+CodePenで、Flutterを体験してみよう
cch-robo
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
Takuya Ueda
Pynyumon03 LT
Pynyumon03 LT
drillan
Python3 プログラミング勉強会
Python3 プログラミング勉強会
Tetsuya Morimoto
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Shinya Okano
Go modules
Go modules
YoshitomoYasuno
Pyladies tokyo 2nd anniversary LT
Pyladies tokyo 2nd anniversary LT
drillan
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Takuya Ueda
Gitはじめの一歩
Gitはじめの一歩
Ayana Yokota
Django pgroonga
Django pgroonga
Atsuo Ishimoto
Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門
Takayuki Shimizukawa
Mais procurados
(20)
GAE/GoでLINE Messaging API を使う
GAE/GoでLINE Messaging API を使う
サードパーティパッケージの歩き方
サードパーティパッケージの歩き方
Javascriptを書きたくないヒ トのためのPythonScript
Javascriptを書きたくないヒ トのためのPythonScript
20120915 Pythonは本当にBlenderの役に立っているか?
20120915 Pythonは本当にBlenderの役に立っているか?
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
久しぶりのPythonでgoogleのアレを制御してみた
久しぶりのPythonでgoogleのアレを制御してみた
Stapy#17LT
Stapy#17LT
勉強会 Cvml python基礎
勉強会 Cvml python基礎
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
DartPad+CodePenで、Flutterを体験してみよう
DartPad+CodePenで、Flutterを体験してみよう
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
Pynyumon03 LT
Pynyumon03 LT
Python3 プログラミング勉強会
Python3 プログラミング勉強会
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Go modules
Go modules
Pyladies tokyo 2nd anniversary LT
Pyladies tokyo 2nd anniversary LT
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Gitはじめの一歩
Gitはじめの一歩
Django pgroonga
Django pgroonga
Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門
Destaque
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
OMEGA (@equal_001)
Djangoアプリの実践的設計手法
Djangoアプリの実践的設計手法
Ian Lewis
Djangoのススメ
Djangoのススメ
Alisue Lambda
でも、機械学習って お難しいんでしょ?
でも、機械学習って お難しいんでしょ?
Shengbo Xu
闇の魔術に対する防衛術
闇の魔術に対する防衛術
Yuki Ishikawa
Pythonで始めるWebアプリケーション開発
Pythonで始めるWebアプリケーション開発
Takahiro Kubo
Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道
Shinya Okano
Webフレームワークパネル(Django) at PyConJP 2012
Webフレームワークパネル(Django) at PyConJP 2012
makoto tsuyuki
Django learning Part2
Django learning Part2
Yusuke Muraoka
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Satoshi Nagayasu
Apple に依存する僕の生存戦略
Apple に依存する僕の生存戦略
Yuki Ishikawa
スタートアップのくせになまいきだ
スタートアップのくせになまいきだ
Yuki Ishikawa
軽量のススメ
軽量のススメ
hirokiky
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
Shinya Okano
Biblnk
Biblnk
繁史 河久保
kay-jpmobile
kay-jpmobile
Tasuku Suenaga
Python勉強会資料(MessageBoard作成)
Python勉強会資料(MessageBoard作成)
Kimihiro N
Python札幌 2012/06/17
Python札幌 2012/06/17
Shinya Okano
顧客リーチ手段再考
顧客リーチ手段再考
Atsushi Iwasa
Destaque
(20)
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
Djangoアプリの実践的設計手法
Djangoアプリの実践的設計手法
Djangoのススメ
Djangoのススメ
でも、機械学習って お難しいんでしょ?
でも、機械学習って お難しいんでしょ?
闇の魔術に対する防衛術
闇の魔術に対する防衛術
Pythonで始めるWebアプリケーション開発
Pythonで始めるWebアプリケーション開発
Djangoフレームワークの紹介 OSC2015北海道
Djangoフレームワークの紹介 OSC2015北海道
Webフレームワークパネル(Django) at PyConJP 2012
Webフレームワークパネル(Django) at PyConJP 2012
Django learning Part2
Django learning Part2
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Apple に依存する僕の生存戦略
Apple に依存する僕の生存戦略
スタートアップのくせになまいきだ
スタートアップのくせになまいきだ
軽量のススメ
軽量のススメ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
mixiアプリ『the Actress』運用にあたっての課題へのチャレンジ
Biblnk
Biblnk
kay-jpmobile
kay-jpmobile
Python勉強会資料(MessageBoard作成)
Python勉強会資料(MessageBoard作成)
Python札幌 2012/06/17
Python札幌 2012/06/17
顧客リーチ手段再考
顧客リーチ手段再考
Django 1.9
1.
Django 1.9 OMEGA(@equal_001)
2.
お前誰よ ・OMEGA (@equal_001) ・株式会社ビープラウド ・Python, Djangoの開発メイン ・バイク乗りプログラマです ・バイクはいいぞ〜! ・東京モータショーで試乗したMT-25が意外とよかった
3.
今日はDjangoの話をします
4.
その前に
5.
いやぁ、PHP7が出ましたね!
6.
Twitterとか記事サイトみてると、 結構盛り上がってたみたいじゃないの
7.
ところで
8.
みなさん知ってましたか?
9.
Django 1.9 がリリースされました!/
10.
11.
12.
リリース日が2日しか違わないのに フレームワークと言語は違うのはわかるが、僕は悲しい
13.
まぁ、気をとりなおして
14.
今日は Django 1.9で どんな機能が追加されたか 紹介していくよ!
15.
まずはどんなものが追加されたか チェックチェック!
16.
17.
18.
19.
メジャー機能の説明だけで 許してください 死んでしまいます
20.
主な追加機能(目次) ● performing actions
after a transaction commit ● password validation. ● Permission mixins for class-based views. ● running tests in parallel. ・Python 3.5 が使える
21.
Performing actions after a
transaction commit
22.
Performing actions after
a transaction commit ● トランザクションが正常にコミットされた後に実行するアクションのフックが追加され た ● rollbackされた場合はdo_something()は呼び出されない
23.
Password validation
24.
Password validation ● パスワードのいろんなバリデーション機能がDjango側でできるようになった ○
defalutは []、設定しなければ全てのパスワードは受理される
25.
Password validation:UserAttributeSimilarityValidator ● Userの入力したパスワードが、username,
first_name, last_name, email と類似 しているかどうかを検証 ● 内部実装 ○ passwordとその他のvalueをlower()で全て小文字へ ○ SequenceMatcherで文字列を比較、quick_ratio()でシーケンスの同一性を測る ○ 類似性が見られた場合、エラーメッセージを返す
26.
Password validation:CommonPasswordValidator ● よくあるパスワードのリスト.txt
を作っておいて、それらと一致したらエラー出す ● 内部実装 ○ common-passwords.txt.gzを解凍・file openして、リストに保持 ○ 入力されたパスワード .lower()が「よくあるパスワードリスト」のどれかと一致したらエラー送出 ○ "This password is too common."とかでる
27.
Password validation:MinimumLengthValidator、NumericPasswordValidator ● パスワードの最小の長さを設定できる ●
地味に嬉しい ○ 今まで、if len(password) < 9: とかやってた ● formsに書くべきなのでは?とか思った ○ Validationするformsとの役割分担、切り分けとか ● 数値のみでパスワードが構成されているかどうかをチェック
28.
Permission mixins for class-based
views
29.
Permission mixins for
class-based views ● Django-bracesにあるアクセス制御関連と似た機能を追加したよという話 ○ Django-braces・・・DjangoのClassBasedViewで使えるMixin集 ● 今まではdecoratorを作ったり、Django-bracesを入れてやっていたことがDjango 側でできるようになった ○ requestを受け取ってViewに処理を渡す前に、アクセス権限のチェックとか ● 今回追加されたMixin ○ AccessMixin ○ LoginRequiredMixin ○ PermissionRequiredMixin ○ UserPassesTestMixin
30.
Permission mixins for
class-based views:LoginRequiredMixin ● LoginRequiredMixin ○ 非認証ユーザをログインページ または 403ページ へリダイレクトする ● Userのis_activeはチェックしないんだって。。
31.
Permission mixins for
class-based views:PermissionRequiredMixin ● PermissionRequiredMixin ○ ビューにアクセスするユーザが指定の権限を持っているかチェックする ○ 権限のないユーザの取り扱いをまとめてカスタマイズできる
32.
Running tests in
parallel
33.
Running tests in
parallel ● 別のプロセスで平行してテストを実行できるよという話 ○ プロセス数の調整もできる ● 実行方法 ○ python manage.py test --pararell=5 ■ DJANGO_TEST_PROCESSESでプロセス数を設定可能 ● 注意点。やっぱあるよね ○ pdb仕込むときは並列化を無効にしないと pdb落ちる ○ テスト失敗時は例外のトレースバックが表示されないこともある(デバッグするの大変になるかも) ○ 各プロセスのテストで独自 DBを使用するので、同じリソースにアクセスしないように気をつけろよ
34.
Running tests in
parallel ● サポート対象外 あっ...。 ○ OSがWindows ○ データベースがOracle
35.
まとめ
36.
まとめ ● トランザクションが正常にコミットされた後に実行するアクションのフックが一機能と して追加された ● パスワードのメジャーなバリデーションをSettingsに設定しておけるようになった ●
Django-bracesにあるビューのアクセス制御関連機能がDjangoの機能として使え るようになった ● パラレルテストを実行できるようになった ● Djangoで正式にPython3.5が使えるようになった
37.
Have a nice
Django life! OMEGA(@equal_001)
Baixar agora