This attribute allows you to place pagination controls before the formatted sequence content.
When the prepare attribute is present the <al-for> tag will perform all processing but will not write any output. This allows you to test pagination results before presenting output.
For example:
>>> import albatross >>> class Ctx(albatross.SimpleContext, albatross.HiddenFieldSessionMixin): ... def __init__(self): ... albatross.SimpleContext.__init__(self, '.') ... albatross.HiddenFieldSessionMixin.__init__(self) ... >>> ctx = Ctx() >>> albatross.Template(ctx, '<magic>', ''' ... <al-for iter="i" expr="range(500)" pagesize="20" prepare/> ... <al-if expr="i.has_prevpage()"> prev</al-if> ... <al-if expr="i.has_nextpage()"> next</al-if> ... <al-for iter="i" pagesize="20" whitespace="indent"> ... <al-value expr="i.value()"> ... </al-for whitespace> ... ''').to_html(ctx) >>> ctx.flush_content() next 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Note the XML empty tag syntax on the <al-for prepare> tag.