comparison doc/implementation.txt @ 111:6e8197a5880f

Split off implementation notes into separate file in doc directory. Added some todo items to the README
author Richard Jones <richard@users.sourceforge.net>
date Sat, 28 Jul 2001 06:44:34 +0000
parents
children c52122f38c9b 54333751e98d
comparison
equal deleted inserted replaced
110:19686b60e410 111:6e8197a5880f
1 Implementation notes
2 ====================
3
4 [see also the roundup package docstring]
5
6 There have been some modifications to the spec. I've marked these in the
7 source with 'XXX' comments when I remember to.
8
9 In short:
10 Class.find() - may match multiple properties, uses keyword args.
11
12 Class.filter() - isn't in the spec and it's very useful to have at the Class
13 level.
14
15 CGI interface index view specifier layout part - lose the '+' from the
16 sorting arguments (it's a reserved URL character ;). Just made no
17 prefix mean ascending and '-' prefix descending.
18
19 ItemClass - renamed to IssueClass to better match it only having one
20 hypderdb class "issue". Allowing > 1 hyperdb class breaks the
21 "superseder" multilink (since it can only link to one thing, and we'd
22 want bugs to link to support and vice-versa).
23
24 templates - the call="link()" is handled by special-case mechanisms in my
25 top-level CGI handler. In a nutshell, the handler looks for a method on
26 itself called 'index%s' or 'item%s' where %s is a class. Most items
27 pass on to the templating mechanism, but the file class _always_ does
28 downloading. It'll probably stay this way too...
29
30 template - call="link(property)" may be used to link "the current node"
31 (from an index) - the link text is the property specified.
32
33 template - added functions that I found very useful: List, History and
34 Submit.
35
36 template - items must specify the message lists, history, etc. Having them
37 by default was sometimes not wanted.
38
39 template - index view determines its default columns from the template's
40 <property> tags.
41
42 template - menu() and field() look awfully similar now .... ;)
43
44 roundup.py - the command-line tool has a lot more commands at its disposal
45

Roundup Issue Tracker: http://roundup-tracker.org/