First an introduction, then a progress report, and finally the question.
Well I am trying to create a Zope 2 like TTW development environment on
ZTK. You can read my plans here:
I finally have an application for it, so I am hard at work.
I got ice.control working. I love its TTW python interpreter.
I got ZAM working. The trick is to start by downloading the Zam.demo
from svn. Many other attempts failed.
I poked around in the code. Here is the high level structure for those
who follow in my footsteps.
Basically the designers wanted a bunch of different user interfaces
which can be written separately, and
each one can install itself or not. That way the core is not dependent
on the individual interfaces. Evidently the old ZMI got this wrong.
The whole ZAM application is based on templates. In the Zam.skin is
template.pt which is the primary page template.
So there is zam.api which provides the core functionality. There is
the best README.txt in this section. Kind of explains things.
Then zam.skin provides the user interface. Minor documentation.
And then you can optionally add the plugins
zamplugin.control This has the pack zodb functionality. And it has the
os, python and zope versions. It also has generations of the ZODB,
zamplugin.error You can see the error logs here.
zamplugin.navigation. I am not sure what this does, nor how this differs
from the site manager.
zamplugin.sampledata From pypi: "A sample data generator is a pluggable
tool to create data needed for tests."
zamplugin.sitemanager This is the one we want. Looks almost like Zope
2, but no way to add objects. I think it should be easy to edit. So
at the end I have a question about this.
So of course all of this stuff is properly broken up in tiny pieces and
put together using ZCML. Brutally painful to do software archeology on
it. I have been reading the source code. I have been reading the
bluebream manuals, but I am just not able to figure out the ZAM
architecture. Some higher level documentation is needed. This is kind
of a first draft.
Oh well, nothing like persistence. Never met a software problem I could
not figure out. But I would love some help.
Actually I am completely convinced lots of people want TTW on Zope 3.
Just poke around the web, so many people talk about it. Some do hate it
of course. To each his own.
Okay, so here is my immediate question.
I like the Zam site management view. I would like to build on it, by adding
a drop down menu of types that can be added, much like in Zope 2.
So simple, I thought, I just have to edit the appropriate page template,
and then call the appropriate function. I can do this I thought.
So I went to:
but all it said was:
I thought Page Templates had to be valid html. What is going on here?
Okay, where did they hide that page template? Seriously, I was not able
to find it anywhere.
And then the other question is "how is all of this Zam stuff put
together?" Is there a higher level architectural document somewhere.
Figuring out the architecture from the source code is quite painful.
I did offer to hire someone to help me, but no one who replied has Zam
I also have a private email list for those who are following my
progress. Let me know if you want to be added.
Check out my iPhone apps TextFaster and TouchTexting
Expect a paradigm shift.
Zope-Dev maillist - Zope-Dev@zope.org
** No cross posts or HTML encoding! **
(Related lists -