Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What's new in Django 1.9
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Marc Tamlyn
October 20, 2015
Technology
230
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
What's new in Django 1.9
Marc Tamlyn
October 20, 2015
More Decks by Marc Tamlyn
See All by Marc Tamlyn
Arousal and Anxiety
mjtamlyn
1
120
Working with Children
mjtamlyn
1
120
Wallingford Castle Archers Incorporation
mjtamlyn
0
240
Observation and Evaluation
mjtamlyn
0
160
Weird and Wonderful things to do with the ORM
mjtamlyn
3
1.5k
An Introduction to Graphene and Relay
mjtamlyn
6
1.2k
Tech Interviews that don't suck
mjtamlyn
4
1.2k
Data driven rendering
mjtamlyn
1
220
Django Development Milestones
mjtamlyn
1
200
Other Decks in Technology
See All in Technology
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
830
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
0
910
エンタープライズデータへ安全につなぐ Production-ready なエージェント設計 ― AI × MCP リファレンスアーキテクチャ ― #AIDevDay
cdataj
1
370
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
670
NYC Summit 2026 におけるAmazon Bedrock AgentCore のアップデート
ren8k
3
280
AIがAPIを書く時代に、私たちは何を設計すべきか
nagix
0
170
データ活用研修 データマネジメント【MIXI 26新卒技術研修】
mixi_engineers
PRO
4
820
AI研修(Day1)【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
2.9k
コンポーネント名には何を含めるべきなのか? / what-should-be-included-in-component-names
airrnot1106
0
200
13年運用タイトルのサーバーサイドが辿り着いた現在地 ― モンスターストライクにおける技術・組織・AI活用から得た知見
mixi_engineers
PRO
1
350
カメラ×AIで挑む「ホワイト物流」― 車両管理、自動化の壁と突破口【SORACOM Discovery 2026】
soracom
PRO
0
180
1台から試せる!Edge IoTを使った位置情報の活用設計【SORACOM Discovery 2026】
soracom
PRO
0
110
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
What's in a price? How to price your products and services
michaelherold
247
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Become a Pro
speakerdeck
PRO
31
6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Visualization
eitanlees
152
17k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
750
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
410
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
400
Transcript
What's new in Django 1.9 Parallel permission passwords?
Django 1.9 • Beta 20th October • RC mid Nov
• Final early December • PLEASE TEST
Password validation • Opt-in AUTH_PASSWORD_VALIDATORS • Min length, common passwords,
user similarity, non-numeric • Framework for your own password validation logic
Password validation class PasswordValidator(object): def __init__(self, **kwargs): pass def validate(self,
password, user=None): if condition(password): raise ValidationError(…) def get_help_text(self): return "Your password must be…" def password_changed(password, user=None): # check not the previous password
Permission Mixins • Similar django-braces and decorators • AccessMixin, LoginRequiredMixin,
PermissionRequiredMixin, and UserPassesTestMixin
Parallel tests • ./manage.py test --parallel • Separate process and
database for each core • Requires tblib • Does not work with Windows or Oracle
On commit hook • transaction.on_commit(func) • Executes func when the
current transaction commits • Good for queueing tasks or email notifications
New admin theme
ORM • JSONField • GDALRasters • Expressions in save() •
Greatest, Least, Now • Transform and Func unified
Forms • CharField now strips whitespace by default • Unicode
slug support • Field ordering
CLI • python -m django • --noinput has --no-input alias
Testing • response.json() • client.force_login(user)
Deprecations and backwards incompatible changes • Python 3.2 and 3.3
dropped • ForeignKey(model, on_delete) • Global timezone adaption • Relative Location header • Implicit __in removed
Final removals • SortedDict • utils.unittest • syncdb • initial_data
• old model loading • manage.py validate • .util modules • request.REQUEST • IPAddressField • import_by_path • FastCGI support • {% url %} in future
Django 1.10 ideas • Improved MSSQL support • Full text
search • Custom indexes • Even more improved expressions • Async worker/communication layer • August 2016
Marc Tamlyn @mjtamlyn photocrowd.com