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
Marc Tamlyn
October 20, 2015
Technology
1
210
What's new in Django 1.9
Marc Tamlyn
October 20, 2015
Tweet
Share
More Decks by Marc Tamlyn
See All by Marc Tamlyn
Arousal and Anxiety
mjtamlyn
1
83
Working with Children
mjtamlyn
1
97
Wallingford Castle Archers Incorporation
mjtamlyn
0
210
Observation and Evaluation
mjtamlyn
0
130
Weird and Wonderful things to do with the ORM
mjtamlyn
3
1.4k
An Introduction to Graphene and Relay
mjtamlyn
6
1.2k
Tech Interviews that don't suck
mjtamlyn
4
1.1k
Data driven rendering
mjtamlyn
1
190
Django Development Milestones
mjtamlyn
1
190
Other Decks in Technology
See All in Technology
手軽に作れる電卓を作って イベントソーシングに親しもう CQRS+ESカンファレンス2026
akinoriakatsuka
0
440
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
Git Training GitHub
yuhattor
1
110
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
新米スクラムマスターの4ヶ月 -「スクラムイベントを回しているのに手応えがない」からの脱出 / Four Months as a New Scrum Master — When Scrum Events Were Running, but Nothing Felt Right
owata
0
170
AI時代のアジャイルチームを目指して ー スクラムというコンフォートゾーンからの脱却 ー / Toward Agile Teams in the Age of AI
takaking22
11
6.8k
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
910
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
710
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
780
Databricks Free Edition講座 データエンジニアリング編
taka_aki
0
2.7k
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
430
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
250
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
700
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
140
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
290
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
410
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
270
How to Talk to Developers About Accessibility
jct
1
99
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
140
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