Make sure that:
The environment variable DJANGO_SETTINGS_MODULE is set to a fully-qualified Python module (i.e. “mysite.settings”).
Said module is on sys.path (import mysite.settings should work).
The module doesn’t contain syntax errors (of course).
If you’re using mod_python but not using Django’s request handler, you’ll need to work around a mod_python bug related to the use of SetEnv; before you import anything from Django you’ll need to do the following:
os.environ.update(req.subprocess_env)
(where req is the mod_python request object).
We happen to think our template engine is the best thing since chunky bacon, but we recognize that choosing a template language runs close to religion. There's nothing about Django that requires using the template language, so if you're attached to ZPT, Cheetah, or whatever, feel free to use those.
Nope. Just like the template system, the model/database layer is decoupled from the rest of the framework.
The one exception is: If you use a different database library, you won't get to use Django's automatically-generated admin site. That app is coupled to the Django database layer.
Using a FileField or an ImageField in a model takes a few steps:
Sometimes your templates just all need the same thing. A common example would be dynamically-generated menus. At first glance, it seems logical to simply add a common dictionary to the template context.
The correct solution is to use a RequestContext. Details on how to do this are here: Subclassing Context: RequestContext.
Sep 20, 2009