SlideShare ist ein Scribd-Unternehmen logo
1 von 67
Downloaden Sie, um offline zu lesen
The State of Django

Jacob Kaplan-Moss

PyCon, March 27, 2009
http://jacobian.org/speaking/2009/state-of-django/
Happy five years!
Since PyCon 2008...
7,000
14,000
QSRF
NFA
Merged
“Dude, we should
totally have a big Django
  meetup some time!”
Developing reusable apps

        James Bennett
!   !




        PyCon Chicago, March 15, 2008
Django 0.96
  Over one year old
1.0
Unicode
http://docs.djangoproject.com/en/dev/ref/unicode/
Home       Download      Documentation     Weblog        Community      Code




Django documentation                                                                 Search

Everything you need to know about Django (and then                                    Search
some).
                                                                                       Latest       1.0     0.96
                                                                                       All
First steps
                                           Getting help
Overview
                                                                                     Browse
                                           Having trouble? We’d like to
 See what writing a database-driven
                                           help!                                        Table of contents
 application with Django looks like.
                                                                                        General Index
                                              Try the FAQ – it’s got
Installation
                                                                                        Global Module Index
                                              answers to many common
 Get Django installed on your computer.
                                              questions.
                                              Looking for specific                   You are here:
Tutorial: Writing your first                  information? Try the Index,
                                                                                        Django v1.0 documentation
Django application                            Module Index or the detailed
                                              table of contents.                             Django documentation
Part 1
                                              Search for information in the
 Start a project, create models and play
                                                                                     Last update:
                                              archives of the django-users
 with the database API.
                                              mailing list, or post a                September 12, 2008, noon (CDT)

                                docs.djangoproject.com
Part 2                                        question.
 Explore the automatically-generated          Ask a question in the
 admin site.                                  #django IRC channel, or
                                              search the IRC logs to see if
Part 3
                                              its been asked before.
48 languages
Signals
0.96
1.0
QSRF
Oracle
Pluggable file storage
http://docs.djangoproject.com/env/dev/howto/custom-file-storage/
newforms
ModelForms
http://docs.djangoproject.com/en/dev/topics/forms/modelforms/
Formsets
http://docs.djangoproject.com/en/dev/forms/formsets/
Session backends
http://docs.djangoproject.com/en/dev/topics/http/sessions/
File uploads: less FAIL
autoescape
Databrowse
http://docs.djangoproject.com/en/dev/ref/contrib/databrowse/
Databrowse


Reporters    John Doe, Jane Smith, Eric Jones, More !


Articles     Dog bites man, Man bites dog, More !
Databrowse


Home / Reporters / Jane Smith



Reporter: Jane Smith
ID           2


Name         Jane Smith


Email        jsmith@example.net


Appears in quot;reporterquot; in the following articles:

Dog bites man
django   wiki   mercurial   docs     presentations      vmware   (user: geo, pass: where2.0)




                      A world-class geographic web framework




                 GeoDjango
newforms-admin
Jython
   PyPy
IronPython*
et cetera
Django 1.1 beta
    now available
What’s new in 1.1?
http://docs.djangoproject.com/en/dev/releases/1.1-alpha-1/

http://docs.djangoproject.com/en/dev/releases/1.1-beta-1/
ORM aggregation
http://docs.djangoproject.com/en/dev/topics/db/aggregation/
>>> Book.objects.aggregate(
...     Avg('price'),
...     highest_price = Max('price'))

{'price_avg': 45.0, 'highest_price': 82.80}
>>> Author.objects.aggregate(Sum('book__price'))

{'book_price_sum': 442}
>>> books = Book.objects.annotate(Max('authors__age'))

>>> books[0].name
u'Python Web Development With Django'

>>> books[0].authors.all()
[<Author: Jeffrey Forcier >, <Author: Paul Bissex>, 
<Author: Wesley J. Chun>]

>>> books[0].authors__age__max
37.0
Publisher.objects.annotate(num_books=Count('book__id')) 
                 .filter(num_books__gt=1) 
                 .order_by('num_books')
Query Expressions
http://docs.djangoproject.com/en/dev/topics/db/queries/#query-expressions
>>> Poll.objects.update(votes = F('votes') + 1)
Test faster
Unmanaged models
class Person(models.Model):
    ...

    class Meta:
        managed = False
Proxy models
from django.contrib.auth import User

class EmotionalUser(User):
    class Meta:
        proxy = True

    def is_angry(self):
        return self.username == 'hulk'
Deferred fields
>>> Story.objects.filter(...).defer('body')
Conditional View Processing
http://docs.djangoproject.com/en/dev/topics/conditional-view-processing
def latest_entry(request):
    return Entry.objects.aggregate(Max('published'))

@last_modified(latest_entry)
def front_page(request):
    ...
Admin
What’s next?
Django 1.1
  April 20ish
Please help!
GSoC
EuroDjangoCon
US DjangoCon ’09
1.2
Py3k
Thank you!
  Jacob Kaplan-Moss
<jacob@jacobian.org>




 BoF: 2:30pm today

Weitere ähnliche Inhalte

Ähnlich wie State Of Django

Django Article V0
Django Article V0Django Article V0
Django Article V0
Udi Bauman
 
Django: Beyond Basics
Django: Beyond BasicsDjango: Beyond Basics
Django: Beyond Basics
arunvr
 
Django On Jython (for Portland and Boulder Python user groups presentations)
Django On Jython (for Portland and Boulder Python user groups presentations)Django On Jython (for Portland and Boulder Python user groups presentations)
Django On Jython (for Portland and Boulder Python user groups presentations)
Leonardo Soto
 

Ähnlich wie State Of Django (20)

Django Tutorial_ Let’s take a deep dive into Django’s web framework.pdf
Django Tutorial_ Let’s take a deep dive into Django’s web framework.pdfDjango Tutorial_ Let’s take a deep dive into Django’s web framework.pdf
Django Tutorial_ Let’s take a deep dive into Django’s web framework.pdf
 
Introduce Django
Introduce DjangoIntroduce Django
Introduce Django
 
django
djangodjango
django
 
Django Article V0
Django Article V0Django Article V0
Django Article V0
 
Introducing Django
Introducing DjangoIntroducing Django
Introducing Django
 
Django
DjangoDjango
Django
 
Django Introdcution
Django IntrodcutionDjango Introdcution
Django Introdcution
 
Django
DjangoDjango
Django
 
Django
DjangoDjango
Django
 
Getting Started With Django
Getting Started With DjangoGetting Started With Django
Getting Started With Django
 
Django
DjangoDjango
Django
 
Django: Beyond Basics
Django: Beyond BasicsDjango: Beyond Basics
Django: Beyond Basics
 
Django
Django Django
Django
 
Django On Jython (for Portland and Boulder Python user groups presentations)
Django On Jython (for Portland and Boulder Python user groups presentations)Django On Jython (for Portland and Boulder Python user groups presentations)
Django On Jython (for Portland and Boulder Python user groups presentations)
 
Django Workflow and Architecture
Django Workflow and ArchitectureDjango Workflow and Architecture
Django Workflow and Architecture
 
Django Girls Tutorial
Django Girls TutorialDjango Girls Tutorial
Django Girls Tutorial
 
dJango
dJangodJango
dJango
 
Django Deployment with Fabric
Django Deployment with FabricDjango Deployment with Fabric
Django Deployment with Fabric
 
Django by rj
Django by rjDjango by rj
Django by rj
 
Getting started with Django 1.8
Getting started with Django 1.8Getting started with Django 1.8
Getting started with Django 1.8
 

Mehr von Jacob Kaplan-Moss

Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)
Jacob Kaplan-Moss
 
The Best (and Worst) of Django
The Best (and Worst) of DjangoThe Best (and Worst) of Django
The Best (and Worst) of Django
Jacob Kaplan-Moss
 
Writing great documentation - CodeConf 2011
Writing great documentation - CodeConf 2011Writing great documentation - CodeConf 2011
Writing great documentation - CodeConf 2011
Jacob Kaplan-Moss
 
Django Introduction, Dev in Rio 2009
Django Introduction, Dev in Rio 2009Django Introduction, Dev in Rio 2009
Django Introduction, Dev in Rio 2009
Jacob Kaplan-Moss
 
Django - the first five years
Django - the first five yearsDjango - the first five years
Django - the first five years
Jacob Kaplan-Moss
 
A brief history of Django model syntax
A brief history of Django model syntaxA brief history of Django model syntax
A brief history of Django model syntax
Jacob Kaplan-Moss
 

Mehr von Jacob Kaplan-Moss (12)

Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)Introduction To Django (Strange Loop 2011)
Introduction To Django (Strange Loop 2011)
 
The Best (and Worst) of Django
The Best (and Worst) of DjangoThe Best (and Worst) of Django
The Best (and Worst) of Django
 
Writing great documentation - CodeConf 2011
Writing great documentation - CodeConf 2011Writing great documentation - CodeConf 2011
Writing great documentation - CodeConf 2011
 
What's new in Django 1.2?
What's new in Django 1.2?What's new in Django 1.2?
What's new in Django 1.2?
 
Django Introduction, Dev in Rio 2009
Django Introduction, Dev in Rio 2009Django Introduction, Dev in Rio 2009
Django Introduction, Dev in Rio 2009
 
Snakes on the Web
Snakes on the WebSnakes on the Web
Snakes on the Web
 
Django In The Real World
Django In The Real WorldDjango In The Real World
Django In The Real World
 
Building a web framework: Django's design decisions
Building a web framework: Django's design decisionsBuilding a web framework: Django's design decisions
Building a web framework: Django's design decisions
 
Django in the Real World
Django in the Real WorldDjango in the Real World
Django in the Real World
 
Django - the first five years
Django - the first five yearsDjango - the first five years
Django - the first five years
 
A brief history of Django model syntax
A brief history of Django model syntaxA brief history of Django model syntax
A brief history of Django model syntax
 
Django Update (OSCON 2007)
Django Update (OSCON 2007)Django Update (OSCON 2007)
Django Update (OSCON 2007)
 

Kürzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

State Of Django