[kforge-dev] ckan developments

John Bywater john.bywater at appropriatesoftwarefoundation.org
Wed May 31 10:11:49 UTC 2006


I've added lots of things to CKAN now, particularly the registry views [1].

The registry views act as a foundation for building presentation layers 
over domain object models.

Before I compare the registry views [1] and the admin views [2], I must 
first clarify that these views are concrete presentation layer classes, 
and are not to be confused with the portion of the kforge web user 
interface that has been called the "admin view", which is just another 
name for the kforge web user interface as such, and has been used where 
a distinction is being made between the kforge web user interface ("the 
kforge service") and the web user interface to services provided within 
kforge ("the services of kforge"), when the interface to services 
provided within kforge is primary in relation to the "admin view", and 
which together have been called the "project view").

That having been said, the admin views (the concrete classes at [2] 
below) support raw manipulation of instances of registered domain model 
classes by the system administrators.

And the registry views (the concrete classes at [1] below) support a 
much more refined manipulation of the domain model registry.

This is why urls to these views now have '/Project/create/' (admin) and 
'/projects/create/' (registry).

Overall, the admin views are quite basic, but the registry views provide 
the foundation for a rich and usable user experience.

The admin views and the registry views share abstract view classes [3], 
and it is adequate to think of the registry views as a foundation for 
layering over, and adding to, what is possible within the admin view 
given the state of the model.

I hope this makes lots of sense!

John.

[1] 
http://project.knowledgeforge.net/ckan/trac/browser/trunk/src/ckan/django/apps/cui/views/registry.py
[2] 
http://project.knowledgeforge.net/ckan/trac/browser/trunk/src/ckan/django/apps/cui/views/admin
[3] 
http://project.knowledgeforge.net/ckan/trac/browser/trunk/src/ckan/django/apps/cui/views/base.py





More information about the kforge-dev mailing list