Django is great if you want to do *exactly* the things it's designed for, and nothing else. If you try to deviate even slightly from the framework, it will give you absolute hell. Our production version of Django had a series of patches you had to apply to the normal version just to get in some basic functionality that wasn't supported.
Try Pylons instead. I haven't used it; apparently there is more supporting code to write, but it's a lot more flexible.