mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-05-27 10:44:33 +00:00
Update documentation on templates to reflect Django templates
This commit is contained in:
parent
ee77f107ea
commit
9d9ed1b210
@ -1,8 +1,9 @@
|
|||||||
# Themes and Templates
|
# Themes and Templates
|
||||||
|
|
||||||
The visual look and feel of the front end is described in theme files
|
The visual look and feel of the front end is described in theme files
|
||||||
while <a href="http://cheetahtemplate.org">Cheetah templates</a>
|
while <a
|
||||||
handle layout.
|
href="https://docs.djangoproject.com/en/1.7/topics/templates/">Django
|
||||||
|
templates</a> handle layout.
|
||||||
|
|
||||||
## Themes
|
## Themes
|
||||||
|
|
||||||
@ -17,43 +18,35 @@ runtime, but it is theoretically possible.
|
|||||||
|
|
||||||
## Templates
|
## Templates
|
||||||
|
|
||||||
Plinth uses the Cheetah templating system. Templates are stored in
|
Plinth uses the Django templating system. Templates are stored in
|
||||||
`/templates`. Template requirements are not specified.
|
`/templates`. Template requirements are not specified.
|
||||||
|
|
||||||
TODO: formalize the template spec so template writers know what they need to implement and where they can deviate.
|
TODO: formalize the template spec so template writers know what they
|
||||||
|
need to implement and where they can deviate.
|
||||||
|
|
||||||
In this section, I'll attempt to document some of the assumptions the
|
In this section, I'll attempt to document some of the assumptions the
|
||||||
program has about templates. The goal is that if you write a tempate
|
program has about templates. The goal is that if you write a tempate
|
||||||
that implements the spec, it should work just fine.
|
that implements the spec, it should work just fine.
|
||||||
|
|
||||||
### The Template Stack
|
### The Template Stack
|
||||||
|
|
||||||
The template is a hierarchical stack, where some templates extend on
|
The template is a hierarchical stack, where some templates extend on
|
||||||
others. At the base of this stack is `base.tmpl`. It should specify
|
others. At the base of this stack is `base.tmpl`. It should specify
|
||||||
variables as blocks (rather than using the $ notation). This allows
|
sections as blocks (rather than using the variables). This allows
|
||||||
other templates to easily override the base template.
|
other templates to easily override the base template.
|
||||||
|
|
||||||
Next up is the `page.tmpl`. It extends `base.tmpl` and simply
|
|
||||||
replaces all the blocks with interpolable variables. Most of the
|
|
||||||
time, `page.tmpl` is what you will actually use to create pages.
|
|
||||||
|
|
||||||
`err.tmpl` builds on top of `page.tmpl` by adding some decoration to
|
`err.tmpl` builds on top of `page.tmpl` by adding some decoration to
|
||||||
the title field.
|
the title field.
|
||||||
|
|
||||||
### Layout
|
### Layout
|
||||||
|
|
||||||
Plinth expects a `main` block. This is where the
|
Plinth expects a `main` block. This is where the meat of the content
|
||||||
meat of the content goes. It is the center pain in the default
|
goes. It is the center pain in the default layout. There is a
|
||||||
layout. There is a `title` block that the program will fill with text
|
`title` block that the program will fill with text describing the
|
||||||
describing the current page. `sidebar_left` contains the submenu
|
current page. `sidebar_left` contains the submenu navigation menu,
|
||||||
navigation menu, and `sidebar_right` is where we put all short text
|
and `sidebar_right` is where we put all short text that helps the
|
||||||
that helps the admin fill out forms. They don't have to be sidebars,
|
admin fill out forms. They don't have to be sidebars, and they don't
|
||||||
and they don't have to go on the left and right.
|
have to go on the left and right.
|
||||||
|
|
||||||
It is possible to override the `footer`, but I haven't yet found a
|
It is possible to override the `footer`, but I haven't yet found a
|
||||||
reason to do so.
|
reason to do so.
|
||||||
|
|
||||||
## Cheetah
|
|
||||||
|
|
||||||
This section is for Cheetah hints that are especially useful in this context.
|
|
||||||
|
|
||||||
TODO: add Cheetah hints
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user