1. Skip to navigation
  2. Skip to content

Entries tagged “django”

This Week in Django 27 - 2008-06-22

written by Michael Trier, on Jun 23, 2008 12:44:00 PM.

This Week in Django is a weekly podcast about all things Django.

This week we talk about the Django Software Foundation, some source commits, some cool projects from the community, a Tip of the Week. and a couple IRC items. It’s a packed show.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (55.8 MB, 1:08:08, AAC)

MP3 Edition (46.8 MB, 1:08:08, MP3)

OGG Edition (38.5 MB, 1:08:08, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

SPONSOR: This Week in Django is brought you by Justin Lilly, who according to all historic accounts, once scissor kicked Angela Landsbury. Thank you Justin.

Big News (2:18)

New foundation for Django – Lawrence-Journal World announces new Django foundation and code commits change license ownership.

Tracking Trunk (5:02)

Branching and Merging (9:50)

Community Catchup (15:57)

  • DebugFooter Redux – Last week we talked about Andreas Marr very cool Django Snippet to add debug information into the footer of each webpage. This week he did it one better based on some suggestions from our program. Now that’s what I call Podcast Driven Development™.
  • Werkzeug Debugger in Django – The Werkzeug debugger has a kick ass AJAX based console option to debug traceback items in the web browser.

Tip of the Week (43:22)

This tip comes from Alexander Solovyov in his blog post Render To Improved.

Sometimes you want to return a RequestContext from a view. One way to do that is to specify the response code using a decorator.


@render_to('mytemplate.html')
def myview(request):
  return ({'id': 1, 'name':'empty'})

# example with override
@render_to('mytemplate.html')
def myview(request):
  return ({'name':'empty'}, 'override.html')

# python 2.3 example with override
def myview(request):
  return ({'name':'empty'}, 'override.html')
myview = render_to(myview, 'mytemplate.html')

You can also return a tuple where the second item is a string that overrides the default template specified in render_to.

  • Permalink Decorator – “A backwards remapper hulu-hooping dancer, thingy.”—brosner

IRC Ad Nauseam (51:11)

Django IRC FAQ

Backwards Incompatible Changes Information

What’s the difference between Abstract Base Classes and Multi-Table Inheritance?

Abstract Base Classes are where you provide a base class, like Person, and then a derived class like Employee. Django will create a single database table for the Person model that contains the combined fields from both the base and derived classes.

Multi-Table Inheritance also has the base and derived class but at the database level you end up with two tables: one for the base class and one for the derived class, with a one-to-one field added in to connect the two.

Again, we highly recommend the excellent post by Kevin Fricovsky that we mentioned in Community Catchup. Plus, as always, the excellent Django documentation.

  • Abstract Base Classes – Django documentation on the subject.
  • Multi-Table Inheritance – Django documentation on the subject.

Is there a way to pass the filter arguments as string to the QuerySet?

QuerySet parameters are standard Python keyword arguments, and can use standard keyword argument expansion.


Post.objects.filter(datetime__year=2008)

Post.objects.filter(**{'datetime__year': 2008})
  • Dynamic Functions – Excellent post by Marty Alchin that discusses keyword arguments in a very easy to understand way.

Thank You!

  • – Follow him in his travels. Lots of very cool pictures.

Hacking Pythons

written by Michael Trier, on Jun 23, 2008 8:44:00 AM.

Someone is very creative. I love it!

“What the hell is going on? This is fucking incredible.” Jacob Kaplan-Moss said. Kaplan-Moss is the chief architect of Django and said nothing like this had ever happened before. “They’re all naked, and these chicks don’t shave anything!”

Werkzeug Debugger in Django

written by Michael Trier, on Jun 21, 2008 10:37:00 PM.

A new feature to come to the project is the implementation of a new management command called runserver_plus. For now the “plus” part means that I’ve replaced the standard Django traceback pages with the Werkzeug Debugger traceback page in it’s place.

Getting Started

This item requires that you have the Werkzeug WSGI utilities installed, in addition to the django-command-extensions app.

To get started we just use the `runserver_plus` command instead of the normal `runserver` command:


$ python manage.py runserver_plus

 * Running on http://127.0.0.1:8000/
 * Restarting with reloader...
Validating models...
0 errors found

Django version 0.97-newforms-admin-SVN-unknown, using settings 'screencasts.settings'
Development server is running at http://127.0.0.1:8000/
Using the Werkzeug debugger (http://werkzeug.pocoo.org/)
Quit the server with CONTROL-C.

Note: all normal runserver options apply. In other words, if you need to change the port number or the host information, you can do so like you would normally.

Using

Whenever we hit an exception in our code, instead of the normal Django traceback page appearing, we see the Werkzeug traceback page instead.

Along with the typical traceback information we have a couple of options. These options appear when you hover over a particular traceback line. Notice that two buttons appear to the right:

The options are:

View Source

This displays the source below the traceback:

Being able to view the source file is handy because you are able to get more context information around where the error occurred. The actual traceback areas are highlighted so they are easy to spot.

One awkward piece about this is that the page is not scrolled to the bottom. At first I thought nothing was happening because of this.

Interactive Debugging Console

When you click on this button a new pane will open up below the traceback line you’re on. This is the money shot:

An ajax based console appears in the pane and you can begin debugging away. Notice in the screenshot above I did a print environ to see what was in the environment parameter coming into the function.

Summary

I’ve only been using the Werkzeug debugger on my Django projects for a day now. But I’m loving it. I encourage you to check it out. Plus if you’re not a current Django-Command-Extensions user, you’re going to find tons of really cool additions in there.

WARNING: This should never be used in any kind of production environment. Not even for a quick check into a problem. I cannot emphasize this enough. The interactive debugger allows you to evaluate python code right against the server. You’ve been warned.

This Week in Django 26 - 2008-06-16

written by Michael Trier, on Jun 17, 2008 9:33:00 PM.

This Week in Django is a weekly podcast about all things Django.

This week we talk about the Django 1.0 Roadmap, EuroPython Sprint, tons of source commits, great stuff happening in the NewForms-Admin branch, some cool projects from the community, and the Tip of the Week.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (32.4 MB, 55:28, AAC)

MP3 Edition (38.1 MB, 55:28, MP3)

OGG Edition (30.8 MB, 55:28, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

Big News (1:37)

EuroPython Django Sprint – We are holding an official Django sprint, July 10th until saturday July 12th, during the EuroPython conference. Join us in the push to 1.0.

Tracking Trunk (9:19)

  • Fixed serialization for multi-model inheritance (7600)
    • Serializers were including all superclass fields in their output. Now only local fields are included.
    • Implicit OneToOne? primary keys were not correctly added to the metamodel, so they were always marked to be serialized, even though they were primary
    • Model saving was too aggressive about creating new parent class instances during deserialization. Raw save on a model now skips saving of the parent class.

Branching and Merging (17:06)

Community Catchup (29:58)

  • Django Dash Results – Congratulations to all the participants. Check the results for information on all the winners.
    • 1st Place – Benjamin Pollack and Tyler Hicks-Wright – Their site was a code review site with Mercurial integration.
    • 2nd Place – Eric Florenzano and Tony HauberFeedalizer is a syndication feed aggregation based on popular feeds ranked by users.
    • 3rd Place – Justin Lilly and Jannis Leidel – A site connecting developers & translators with rankings for translators and groupings.
  • A Better Serialization Framework – A series of interesting posts by fiam on creating what he calls a better serialization framework.

Tip of the Week (41:59)

If you have a template tag that you want to automatically load into context for all of your templates, you can take the same approach Django does with the built-in template tags.

This must be done early on in the load process, so in your __init__.py for the app or project, just do:


from django.template import add_to_builtins
add_to_builtins('template_utils.templatetags.generic_content')

Thank You! (44:56)

  • Code Swarm – Python – amazing swarm representation of Python code commits over years of time. You have to see this!

This Week in Django 25 - 2008-06-08

written by Michael Trier, on Jun 9, 2008 4:25:00 PM.

This Week in Django is a weekly podcast about all things Django.

This week we talk about a few source commits, a discussion about releases, Some cool projects from the community, and the Tip of the Week.

We liked this one so much we decided to record it twice!

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (42.9 MB, 52:57, AAC)

MP3 Edition (36.4 MB, 52:57, MP3)

OGG Edition (28.3 MB, 52:57, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

Tracking Trunk (4:05)

Community Catchup (15:58)

  • – Google Group discussion for Django developers in India.
  • – a Django pluggable app that gets a constantly updating list of flash games and swf files every day that you can include with a template tag into any project you want.

Tip of the Week (44:00)

Onno Timmerman sends us this tip with doing Internationalization.

I needed to give someone a django.po file. Normaly a user wants to edit it with Microsoft Word, even when you ask not to they tend to do it! Poedit is a great program that makes it easy to edit these files.

Poedit

Thank You! (45:39)

Intermediate Models – Ticket 6095 – Worked on by Eric Florenzano

Brian Rosner

Junk in the Trunk by Rootin’ Tootin’ Sing-A-Longs & Campfire Ditties

This Week in Django 24 - 2008-06-01

written by Michael Trier, on Jun 2, 2008 2:46:00 PM.

This Week in Django is a weekly podcast about all things Django.

This week Eric Florenzano fills in while Michael is out. We talk to James Tauber about who he is and what Pinax is. A few trunk changes and some community bits.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (32.7 MB, 44:47, AAC)

MP3 Edition (41.7 MB, 44:47, MP3)

OGG Edition (53.7 MB, 44:47, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Quick note, Brian Rosner did the audio in Michael’s absence. Its not as good as what Michael produces, but he is getting better with it :)

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

Big News (0:25)

We’re back! Apologizes for last week’s cancellation. Michael’s wife gave birth to their 2nd child, Lucas Matthew Trier. Welcome to the world, Lucas!

James Tauber Interview (1:12)

  • James is the CTO at US-based startup mValent.
    • Tell us a little about mValent? Is Django involved?
  • How did you come to find and use Django?
  • You created django-hotclub. What is it?
      • – Provides a way to handle email confirmation without getting in the way of the user.
      • – Provides many useful commands to your ./manage.py script.
      • – Defines a relationship between two Users and provides utilities and tools around it.
      • – Asynchronous e-mail handling with a do-not send list and more.
      • – Private messaging between users on a site.
      • – Provides a simple way to announce things to all members on a site.
      • – Localizes all datetimes on a site to the user specification.
    • Pinax – Project connecting all reusable apps together to provide a framework to adding your own.

Tracking Trunk (31:51)

Community Catchup (35:09)

  • – Sleepy, allows you to create a static site by rendering Django templates to HTML.

Thank You! (39:08)

  • Special thanks to Brian Rosner for handling the show production this week. You did an awesome job man.

This Week in Django - Cancelled

written by Michael Trier, on May 26, 2008 7:20:00 PM.

Due to the Memorial Day Weekend and the lack of any pressing news, we’ve decided to cancel the show this week. Brian Rosner and I hope you all have an opportunity to spend time with family and friends. We’ll be doing the same.

This Week in Django 23 - 2008-05-18

written by Michael Trier, on May 20, 2008 12:23:00 AM.

This Week in Django is a weekly podcast about all things Django.

This week we talk about PyOhio, a source commit, Some cool projects / posts from the community, the Tip of the Week, and a question from the IRC.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (21.3 MB, 35:18, AAC)

MP3 Edition (24.3 MB, 35:18, MP3)

OGG Edition (19.5 MB, 35:18, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

Big News (1:14)

  • PyOhio – Regional Python conference to be held in Columbus, Ohio on July 26, 2008. It is one full day of Python fun, and it is free!
  • EuroPython – Monday 7th July – Saturday 12th July at Vilnius, Lithuania.

Tracking Trunk (3:59)


{
'changeset': 17, 
'ticket_new': 45, 
'ticket_close': 14, 
'ticket_update': 62, 
'patch': 28, 
'wiki_edit': 29
}

Branching and Merging

  • Check out brosner’s GitHub branch nfa_docs for his work on the newforms-admin documentation.

Community Catchup (8:47)

  • Pocket DjangoPaul Bissex describes how he simply setup Django on a jailbroken iPhone using the Cydia package manager.
  • – Cool project by Janis Leidel. It loads template data from your database. All templates are editable via the admin interface. Nice for django.contrib.flatpages templates or default error templates.
  • Exploring Mixins with Django Model Inheritance – Another great post by Eric Florenzano discussing how to use mixins with the model inheritance features in Django trunk.
    • Peevalizer.com – Speaking of Eric Florenzano, he and Tony Hauber just released Peevalizer.com a new social networking site for people to list and discuss things that irritate them.
  • Web frameworks: a free software oriented study – following on last weeks discussion of lines of code comparisons between Rails and Django, MiningLabs presents a comparison between Rails, Django, and Seam. There’s lots of pretty graphs.
  • – Another Django book set to be released this year. This one is by Marty Alchin and we expect it to be very good advanced book on Django.
  • Django Admin Omnigraffle Stencil – Wonderful stencil for OmniGraffle (mac os x), created by Alex Lee, containing all of the common UI elements seen in the Django admin interface, as a tool for wireframing. This link came to us through Simon Willison’s blog.

Tip of the Week (23:01)

The URLconf in Django will short-circuit when it matches a pattern. This is good because it can allow one to override URLs and map them to their own views. This is the fundamental base of how one can create their own admin interfaces.


from django.conf.urls.defaults import *

urlpatterns = patterns('',
    (r'^admin/bookstore/report/$', 'bookstore.admin_views.report'),
    (r'^admin/', include('django.contrib.admin.urls')),
)

Your view might look like this:


from mysite.books.models import Book
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.contrib.admin.views.decorators import staff_member_required

def report(request):
    return render_to_response(
        "admin/books/report.html",
        {'book_list' : Book.objects.all()},
        RequestContext(request, {}),
    )
report = staff_member_required(report)

It is important to use the staff_member_required decorator to protect the view from unwanted eyes.

IRC Ad Nauseam (28:16)

Django IRC FAQ

Backwards Incompatible Changes Information

I want to be able to check if a template variable is empty, how can I do that?

We see lots of questions that relate in some form or another to being able to test for empty or None conditions within the templates. The documentation on the if tag is pretty clear, but just as a refresher here’s how it plays out:

It uses Python’s Truth Value Testing. a template variable that is:

  • None
  • False
  • zero of any numeric type, for example, 0, 0L, 0.0, 0j.
  • any empty sequence, for example, ’’, (), [].
  • any empty mapping, for example, {}.
  • instances of user-defined classes, if the class defines a __nonzero__() or __len__() method, when that method returns the integer zero or bool value False.3.1
  • Django Documentation on if tag

Thank You! (33:28)

  • brosner on Twitter. Check out his blog.

This Week in Django 22 - 2008-05-11

written by Michael Trier, on May 13, 2008 11:10:00 PM.

This Week in Django is a weekly podcast about all things Django.

This week we have discussion about a XSS vulnerability, Some cool projects and blog posts from the community, the Tip of the Week, and a question from the IRC.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (24.3 MB, 40:00, AAC)

MP3 Edition (27.5 MB, 40:00, MP3)

OGG Edition (21.7 MB, 40:00, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

Tracking Trunk (1:26)

Community Catchup (7:56)

  • – Patch to allow updates to do updates back to the same column or even to update with literal values.

Tip of the Week (28:15)

How can I break apart my models.py file into individual files?

IRC Ad Nauseam (32:23)

Django IRC FAQ

Backwards Incompatible Changes Information

My login form Isn’t working the first attempt I login at. The second attempt, it works though. How is this possible?

You probably neglected to send a test cookie on the first view of whatever page your login form is at.

Thank You! (37:34)

More information on Brian Rosner: http://oebfare.com/ and .

This Week in Django 21 - 2008-05-04

written by Michael Trier, on May 6, 2008 12:36:00 AM.

This Week in Django is a weekly podcast about all things Django.

This week we have a couple of special guests. First, Eric Florenzano joins us for most of the show, and provides special insight into a few conversation items. Secondly we privileged to have Francis Cleary on the program to discuss a couple Tip of the Week items. We also cover all the regular stuff plus stream the program live on ustream.

Please see the Show Notes below for all the pertinent information and links

Downloads

AAC Enhanced Podcast (33.2 MB, 1:01:14, AAC)

MP3 Edition (42.1 MB, 1:01:14, MP3)

OGG Edition (31.9 MB, 1:01:14, Vorbis)

The Enhanced Podcast version contains screenshots and easy access links to all of the items we discuss throughout the podcast.

Feeds Available

iTunes Feeds are available. By subscribing using the iTunes feeds the podcasts will automatically be downloaded for you when we release them.

iTunes Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

Regular RSS Feeds

This Week in Django – AAC Edition

This Week in Django – MP3 Edition

This Week in Django – OGG Edition

Give Us Feedback

Want to give us some feedback on the show? We’re always looking for ideas or suggestions that will help improve each episode. Please contact us at feedback __at__ thisweekindjango.com.

Show Notes

  • Streaming the Show Live on UStream If you want to watch us do the show including show prep stuff follow for notifications.

Tracking Trunk (2:50)

Branching & Merging (8:53)

Community Catchup (19:38)

  • Django l10n – Marc Garcia, who was on last week’s show provides a followup post that does a great job of pulling together the information we discussed as well as stuff we did not get time to cover.
  • Inheritance vs. Composition – Excellent post by Eric Florenzano on the differences between inheritance and composition approaches to structuring your models in Django.

Tip of the Week (36:16)

Francis Cleary is on the show with us this week to present his tip that he entered in the Win Cool Stuff Contest and was our grand prize winner.

Multiple view prefixes

Rather then have complex and long urls like so


urlpatterns += patterns('',
   (r'^$', 'mySite.Project.views.mainpage' ),
   (r'^custom/view/$', 'mySite.Project.views.'view_function'),
   (r'^lookup/tag/(?P\w+)/$', 'mySite.Project.views.tag_list'),
   (r'^users/$' , 'django.views.generic.list_detail.object_list', user_dict),
   (r'^recent/$','django.views.generic.list_detail.object_list', all_dict),
   (r^text/$', 'django.views.generic.date_based.object_detail', object_dict),
)

Take advantage of the first argument to the patterns() function to specify a prefix to apply to each view function. just make sure you have the += not just =.


urlpatterns += patterns('mySite.Project.views',
   (r'^$', 'mainpage'),
   (r'^custom/view/$', 'view_function'),
   (r'^lookup/tag/(?P\w+)/$', 'tag_list'),
)

urlpatterns += patterns('django.views.generic',
   (r'^users/$' , 'list_detail.object_list', user_dict),
   (r'^recent/$', 'list_detail.object_list', all_dict),
   (r'^(?P\d{4})/$', 'date_based.archive_year', object_dict),
)

Advanced Generic Views

If you don’t want your urls.py filling up with dictionary or would like to do more complicated filtering or extra work to a list. Define view functions that return your generic view and dictionary.

In this example from the Django Book. We will use a generic view to display an author but we want to update the last_accessed data.


urls.py

from mysite.books.views import author_detail

urlpatterns = patterns('',
   #...
   (r'^authors/(?Pd+)/$', author_detail),
)

views.py

import datetime
from mysite.books.models import Author
from django.views.generic import list_detail
from django.shortcuts import get_object_or_404

def author_detail(request, author_id):
   # Look up the Author (and raise a 404 if she's not found)
   author = get_object_or_404(Author, pk=author_id)

   # Record the last accessed date
   author.last_accessed = datetime.datetime.now()
   author.save()

   # Show the detail page
   return list_detail.object_detail(
       request,
       queryset = Author.objects.all(),
       object_id = author_id,
   )

Rather then calling the generic view from the urls.py you can once again see how uncoupled things are in django and just return the generic view from your own wrapped view.

  • Are you generic? – Great earlier post by Wilson Miner on using Generic Views for non-programmers.

IRC Ad Nauseam (45:33)

Django IRC FAQ

Backwards Incompatible Changes Information

  • We have discussed the changes to the Paginator that occured during the PyCon 2008 sprints, but we are still seeing people tripping up over it. Paginator originally worked only on QuerySets, but has now been abstracted out. Paginiator is now generalized enough to work on lists. This is the reason for QuerySetPaginator. It special cases certain things to prevent performing the wrong operation on the QuerySet.

>>> from cameras.models import CameraImage
>>> CameraImage.objects.all().count()
248788L
>>> from django.core.paginator import Paginator 
>>> paginator = Paginator( CameraImage.objects.all(), 48, True)
>>> import time;start=time.time(); page = paginator.page(50); print time.time()-start

Some questions about general IRC

We get lots of questions about IRC in general, so maybe a few little tidbits here and there:

Why don’t you use manners? When I say Thank You, you don’t respond.

Okay here’s the deal, there’s no reason to increase the noise level on IRC. That means although we appreciate the thanks, often we will not acknowledge it. So don’t take it personally.

I asked a question and no one responded. Why is that?

People will answer if they know. You can re-ask but please wait a bit. Don’t use the #django-dev channel, that’s the wrong thing to do.

It might be good to think about how you can rephrase the question.

Use the . It’s another avenue available.

Can anyone help with a NewForms-Admin Question?

Don’t ask to ask. Just ask straight away. It depends often on the area of the question. So it’s best to just ask your question.

Will “blank” work?

Try it. Often the best thing to do is try it. That’s what anyone will end up doing.

Couple other tips, read the FAQ, Backwards Incompatible Changes, and the Freenode FAQ.

Thank You! (58:20)