Top Banner
The State of Django Jacob Kaplan-Moss PyCon, March 27, 2009 http://jacobian.org/speaking/2009/state-of-django/
67

State Of Django

May 06, 2015

Download

Technology

Django 1.0 was released in September 2008. This release marks a major turning
point in Django's development; a real maturation of the project. Join the lead
developers of Django as they discuss what's new in Django 1.0, cover the Django
1.1 release (currently scheduled for a few weeks after PyCon), and discuss the
project's future.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: State Of Django

The State of Django

Jacob Kaplan-Moss

PyCon, March 27, 2009http://jacobian.org/speaking/2009/state-of-django/

Page 2: State Of Django

Happy five years!

Page 3: State Of Django

Since PyCon 2008...

Page 4: State Of Django

7,000

Page 5: State Of Django

14,000

Page 6: State Of Django

QSRFNFA

Page 7: State Of Django

Merged

Page 8: State Of Django

“Dude, we should totally have a big Django

meetup some time!”

Page 9: State Of Django
Page 10: State Of Django

! !

Developing reusable apps

James Bennett

PyCon Chicago, March 15, 2008

Page 11: State Of Django
Page 12: State Of Django
Page 13: State Of Django

Django 0.96Over one year old

Page 14: State Of Django

1.0

Page 15: State Of Django

Unicodehttp://docs.djangoproject.com/en/dev/ref/unicode/

Page 16: State Of Django

Getting help

Having trouble? We’d like to

help!

Try the FAQ – it’s got

answers to many common

questions.

Looking for specific

information? Try the Index,

Module Index or the detailed

table of contents.

Search for information in the

archives of the django-users

mailing list, or post a

question.

Ask a question in the

#django IRC channel, or

search the IRC logs to see if

its been asked before.

Django documentation

Everything you need to know about Django (and thensome).

First steps

OverviewSee what writing a database-driven

application with Django looks like.

InstallationGet Django installed on your computer.

Tutorial: Writing your firstDjango application

Part 1Start a project, create models and play

with the database API.

Part 2Explore the automatically-generated

admin site.

Part 3

Search

Search

Latest 1.0 0.96

All

Browse

Table of contents

General Index

Global Module Index

You are here:

Django v1.0 documentation

Django documentation

Last update:

September 12, 2008, noon (CDT)

Home Download Documentation Weblog Community Code

docs.djangoproject.com

Page 17: State Of Django

48 languages

Page 18: State Of Django

Signals

Page 19: State Of Django

0.96

Page 20: State Of Django

1.0

Page 21: State Of Django

QSRF

Page 22: State Of Django

Oracle

Page 23: State Of Django

Pluggable file storagehttp://docs.djangoproject.com/env/dev/howto/custom-file-storage/

Page 24: State Of Django

newforms

Page 25: State Of Django

http://docs.djangoproject.com/en/dev/topics/forms/modelforms/

ModelForms

Page 26: State Of Django

Formsetshttp://docs.djangoproject.com/en/dev/forms/formsets/

Page 27: State Of Django

Session backendshttp://docs.djangoproject.com/en/dev/topics/http/sessions/

Page 28: State Of Django

File uploads: less FAIL

Page 29: State Of Django

autoescape

Page 30: State Of Django

Databrowsehttp://docs.djangoproject.com/en/dev/ref/contrib/databrowse/

Page 31: State Of Django

Databrowse

Reporters

Articles

John Doe, Jane Smith, Eric Jones, More !

Dog bites man, Man bites dog, More !

Page 32: State Of Django

Databrowse

Home / Reporters / Jane Smith

Reporter: Jane Smith

ID 2

Name Jane Smith

Email [email protected]

Appears in "reporter" in the following articles:

Dog bites man

Page 33: State Of Django

GeoDjango

A world-class geographic web framework

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

Page 34: State Of Django
Page 35: State Of Django
Page 36: State Of Django

newforms-admin

Page 37: State Of Django

JythonPyPy

IronPython*

Page 38: State Of Django

et cetera

Page 39: State Of Django

Django 1.1 betanow available

Page 40: State Of Django

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/

Page 41: State Of Django

ORM aggregationhttp://docs.djangoproject.com/en/dev/topics/db/aggregation/

Page 42: State Of Django

>>> Book.objects.aggregate(...     Avg('price'),...     highest_price = Max('price'))

{'price_avg': 45.0, 'highest_price': 82.80}

Page 43: State Of Django

>>> Author.objects.aggregate(Sum('book__price'))

{'book_price_sum': 442}

Page 44: State Of Django

>>> books = Book.objects.annotate(Max('authors__age'))

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

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

>>> books[0].authors__age__max37.0

Page 45: State Of Django

Publisher.objects.annotate(num_books=Count('book__id')) \                 .filter(num_books__gt=1) \                 .order_by('num_books')

Page 46: State Of Django

http://docs.djangoproject.com/en/dev/topics/db/queries/#query-expressions

Query Expressions

Page 47: State Of Django

>>> Poll.objects.update(votes = F('votes') + 1)

Page 48: State Of Django

Test faster

Page 49: State Of Django

Unmanaged models

Page 50: State Of Django

class Person(models.Model):    ...

    class Meta:        managed = False

Page 51: State Of Django

Proxy models

Page 52: State Of Django

from django.contrib.auth import User

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

    def is_angry(self):        return self.username == 'hulk'

Page 53: State Of Django

Deferred fields

Page 54: State Of Django

>>> Story.objects.filter(...).defer('body')

Page 55: State Of Django

Conditional View Processinghttp://docs.djangoproject.com/en/dev/topics/conditional-view-processing

Page 56: State Of Django

def latest_entry(request):    return Entry.objects.aggregate(Max('published'))

@last_modified(latest_entry)def front_page(request):    ...

Page 57: State Of Django

Admin

Page 58: State Of Django
Page 59: State Of Django

What’s next?

Page 60: State Of Django

Django 1.1April 20ish

Page 61: State Of Django

Please help!

Page 62: State Of Django

GSoC

Page 63: State Of Django

EuroDjangoCon

Page 64: State Of Django

US DjangoCon ’09

Page 65: State Of Django

1.2

Page 66: State Of Django

Py3k

Page 67: State Of Django

Thank you!Jacob Kaplan-Moss

<[email protected]>

BoF: 2:30pm today