[kforge-dev] view classes

John Bywater john.bywater at appropriatesoftwarefoundation.org
Tue May 9 09:58:09 UTC 2006


Just a note to say that I'm developing various "view" classes [1].

There is a powerful new admin module [2] with a set of admin views to 
provide a generic domain model editor. The admin views make use of 
abstract view classes [3] to support listing, creating, reading, 
updating, and deleting domain objects within a model. The admin module 
works independently of any other part of the kforge presentation layer.

I'm finding that reworking the old members views [4] and services views 
[5] to use the abstract view classes in a similar way to the admin views 
is very promising, but has been quite tricky to implement.

But I think I've cleared up most of my confusion by now, which was 
largely due to the relative complexity of the concern. In other words 
there are a relatively large number of variables needed to drive the 
application functionality from the meta objects, whilst providing for 
this functionality to be extended for particular parts of the presentation.

Needless to say, I have been working test-first, and a lot of new tests 
have been written for the presentation layer (many of which were 
previously missing). This includes both unit tests against the view 
classes [6], and "webunit" tests against the HTTP interface [7].

Regards,

John.


[1] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views
[2] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views/admin/__init__.py
[3] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views/base.py
[4] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views/member.py
[5] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views/service.py
[6] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/views/test
[7] 
http://project.knowledgeforge.net/kforge/trac/browser/trunk/src/kforge/django/apps/kui/test





More information about the kforge-dev mailing list