-
Notifications
You must be signed in to change notification settings - Fork 0
GTD Models
m3wolf edited this page May 17, 2013
·
5 revisions
In OrgWolf, the main data object is the Node
. It gets passed around between the various platforms as well as the javascript and python code. Nodes are stored in hierarchy trees. Each tree is treated as an independent project. See Storing Hierarchical Data in a Database for a nice summary.
It has the following attributes, saved as columns in the database:
-
pk
- Primary key, currently the same as theid
field -
title
- Human readable title for this Node -
slug
- URL friendly title. This should stay the same even if thetitle
attribute changes. -
todo_state
- Foreign Key to aTodoState
object that is associated with this Node. -
archived
- If false, this Node does not show up unless the "Show All" button has been clicked. -
tree_id
- The project (tree) that this node belongs too. -
lft
- Used for determining the structure of a given project (tree) -
rght
- Opposite edge tolft
. -
parent
- The Node directly above this one in the tree. -
level
- How far down in its tree this Node is. Root nodes -> 0. -
text
- HTML text holds details associated with the Node. -
tag_string
- A ':' seperated list of tags. Tags associate this Node with agtd.models.Tag
object. -
scope
- What area of responsibility this falls under (eg. work, family). Foreign key to a Scope object. -
owner
- A foreign key to anOrgWolfUser
object listing who owns this Node. -
assigned
- A foreign key to aContact
object that represents who this Node is assigned to. If None, then associated withowner
field. -
users
- Other people that can see all of this tree (for multi-person projects). -
opened
- Date-time of when the Node was created. Usually set at creation and not changed. -
closed
- Date-time of when the Node was changed to a completedtodo_state
field reference. -
deadline
- Date-time of when the Node is flagged as overdue. -
deadline_time_specific
- Whether time should be considered, or just date, in the deadline field. -
scheduled
- Date-time of when this Node is scheduled. Only relevant with certain ` -
scheduled_time_specific
- Whether time should be considered, or just date, in the scheduled field. -
time_needed
- 'Hi' or 'Lo' -
priority
- 'A', 'B', or 'C'. -
energy
- -
repeats
- True or False whether this node will automatically update the scheduled date whentodo_state
field is changed to a TodoState that is closed. -
repeating_unit
- 'D'ays, 'W'eeks, 'M'onths or 'Y'ears. -
repeating_number
- How many ofrepeating_unit
field to use for automatic rescheduling. -
repeats_from_completion
- Whether the entry reschedules based on when it's completed or when it was scheduled. False means repeat from when it was scheduled. -
related_projects
- Foreign Key to other Node instances. Allows for cross-tree linking.