Now that you understand a bit more about the internals of the template system, let's look at how to extend the system with custom code. Most template customization comes in the form of custom template tags and/or filters. Although the Django template language comes with many built-in tags and filters, you'll probably assemble your own libraries of tags and filters that fit your own needs. Fortunately, it's quite easy to define your own functionality.
Custom template tags and filters must live inside a Django app. If they relate to an existing app it makes sense to bundle them there; otherwise, you should create a new app to hold them. The app should contain a templatetags
directory, at the same level as models.py
, views.py
, and so on. If this doesn't already exist, create it-don't forget the __init__.py
file to ensure the directory is treated as a Python package.
After adding this module, you will need to restart your server before you can use the tags...