Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
97 lines (52 sloc) 2.56 KB
.. _apps-templates:
Templates
=========
+ Placed in APP/templates/APP/template.html
In an effort to standardize the block names in Django templates, I
have proposed the following blocks for common usage.
+ {% block title %}
This will be the block where you define the title of the page.
Presumably your base.html will define your Site's name (perhaps even
using the Sites framework) outside of this tag, to be places on all
pages.
+ {% block extra_head %}
I think that this is a good one that most people are already using in
some form or another. In your base template you have a set of things
in your ` ` that every page will have. However, a lot of other pages
need things that they also want to put in the head of a document, like
RSS feeds, Javascript, CSS, and all the other things that should go in
the head. You can and probably will have other specialized blocks
(like title above) that will fill in other parts of the head too.
+ {% block body %}
This tag will be placed around the entire body section of the page.
This allows you to create pages in your app that replace the entire
page, not just the content. This won't be used a lot, but it's a
really handy tag to have when you need it. If you haven't noticed,
I've been trying to keep tag names consistent with their html tag
names whenever possible.
+ {% block menu %}
This would be where your menu goes. It would be the site-wide
navigation, and not a per-page type of navigation.
+ {% block content %}
This will be the place where you define the content on a page. This
will presumably change on every page. It will not include any site
navigation, headers, footers, or anything else that would belong in a
base template.
Other possible blocks
+++++++++++++++++++++
+ {% block content_title %}
This would be where the "title" of a content block would be. It
includes the title of a blog. It can also include some kind of
navigation between content, or other things like that. Presumably
something that isn't the main pages content. I don't know if this
should go inside the `content` tag and have a `main_content` as
opposed to the `content` tag proposed above.
+ {% block header %} {% block footer %}
Any text area in the header of footer that might change on a page-by-
page basis.
+ {% block body_id %} {% block body_class %}
This would be used to set the class or id of the body tag in the
document. This is useful to set for styling and other properties.
+ {% block [section]_menu %} {% block page_menu %}
This would be opposed to the `menu` block proposed above. It would be
for the section or page.