Mercurial > p > roundup > code
diff doc/customizing.txt @ 1235:7441653e5330
added hook for external password validation, and some more docco
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Thu, 26 Sep 2002 23:59:08 +0000 |
| parents | c0a3b1c49ef7 |
| children | dd52bf10f934 |
line wrap: on
line diff
--- a/doc/customizing.txt Thu Sep 26 22:15:54 2002 +0000 +++ b/doc/customizing.txt Thu Sep 26 23:59:08 2002 +0000 @@ -2,7 +2,7 @@ Customising Roundup =================== -:Version: $Revision: 1.48 $ +:Version: $Revision: 1.49 $ .. This document borrows from the ZopeBook section on ZPT. The original is at: http://www.zope.org/Documentation/Books/ZopeBook/current/ZPT.stx @@ -185,11 +185,6 @@ your changes. A tracker schema defines what data is stored in the tracker's database. -The schemas shipped with Roundup turn it into a typical software bug tracker -or help desk. - -XXX make sure we ship the help desk - Schemas are defined using Python code in the ``dbinit.py`` module of your tracker. The "classic" schema looks like this:: @@ -434,7 +429,9 @@ Use the roundup-admin interface's create, set and retire methods to add, alter or remove items from the classes in question. -XXX example + +See "`adding a new field to the classic schema`_" for an example that requires +database content changes. Web Interface @@ -1532,7 +1529,11 @@ This is the easiest part of the change. The category would just be a plain string, nothing fancy. To change what is in the database you need to add -some lines to the ``open()`` function in ``dbinit.py``:: +some lines to the ``open()`` function in ``dbinit.py`` under the comment:: + + # add any additional database schema configuration here + +add:: category = Class(db, "category", name=String()) category.setkey("name") @@ -1558,6 +1559,38 @@ That is all you need to do to change the schema. The rest of the effort is fiddling around so you can actually use the new category. +Populating the new category class +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If you haven't initialised the database with the roundup-admin "initialise" +command, then you can add the following to the tracker ``dbinit.py`` in the +``init()`` function under the comment:: + + # add any additional database create steps here - but only if you + # haven't initialised the database with the admin "initialise" command + +add:: + + category = db.getclass('category') + category.create(name="scipy", order="1") + category.create(name="chaco", order="2") + category.create(name="weave", order="3") + +If the database is initalised, the you need to use the roundup-admin tool:: + + % roundup-admin -i <tracker home> + Roundup <version> ready for input. + Type "help" for help. + roundup> create category name=scipy order=1 + 1 + roundup> create category name=chaco order=1 + 2 + roundup> create category name=weave order=1 + 3 + roundup> exit... + There are unsaved changes. Commit them (y/N)? y + + Setting up security on the new objects ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
