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
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
110
Wallingford Castle Archers Incorporation
mjtamlyn
0
230
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
【Snowflake Summit 2026 Recap!!】Snowflake Summit Deep Dive: Security & Governance
civitaspo
1
280
秘密度ラベル初心者が第1歩でつまづかないための「設計・運用」ポイント
seafay
PRO
1
400
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
3
740
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
1
980
SONiCの統計情報を取得したい
sonic
0
260
クレデンシャル流出 ― 攻撃 3 時間 vs 復旧 10 時間。この非対称性にどう備えるか
kazzpapa3
2
370
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク ~実装編~
sonic
0
310
攻撃者視点で考えるDetection Engineering
cryptopeg
3
2k
フィジカル版Github Onshapeの紹介
shiba_8ro
0
300
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
180
iAEONの段階的リアーキテクト戦略 / iAEON's_Gradual_Re-architecture_Strategy
aeonpeople
0
230
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
290
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
So, you think you're a good person
axbom
PRO
2
2.1k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
210
The Cult of Friendly URLs
andyhume
79
6.9k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
390
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
180
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
250
Designing for Timeless Needs
cassininazir
1
260
The Pragmatic Product Professional
lauravandoore
37
7.3k
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