"Richard P. Muller" wrote:
"manage_changeProperties(counter_value=getProperty('counter_value',getProperty(counter_starting_value,0)-1)+1)"> Words simply cannot express my gratitude.
Wow, guess it worked then... that was a bit of luck (I didn't actually test it ;-)
Can you clue me in a bit more on the functions you called. Looks like they are manage_changeProperties(), getProperty(). I'm guessing these are both Python functions. Where are they documented, so I can learn more?
They are APIs/Interfaces exposed by Zope for manipulating properties (a notoriously difficult thing to do in Zope :S) See http://www.zope.org/Members/michel/Projects/Interfaces/PropertyManager for the full list.
You mentioned that (1) DTML is not a programming language,
A half joke. DTML, IMHO, is not supposed to be a programming language but until Python and Perl methods become freely available, you have little option but to program in it. External Methods can be a real pain (do NOT try using them with Zope versions ;-)
ZODB is a bad place to start on Zope programming.
Not quite. My point was that storing highly dynamic data (such as a page counter) in a transactional database like the ZODB's normal FileStorage is a bad idea since you'll use up loads of disk space very quickly...
By these two points, should I infer that learning how to write external methods in Python *is* a good place?
Er, maybe, but that's not what I'd recommend.
Can you, or someone else on the list, give me a suitable homework assignment for a first Zope programming project? I was toying with the idea of writing a checkbook register in Zope, but I think it might be beyond my capacities right now.
My first port of call was the Zope Content Managers Guide (http://www.zope.org/Documentation/Guides/ZCMG) I worked through that to get the basics (The DTML Reference (http://www.zope.org/Documentation/Guides/DTML) can help but is _really_ out of date) Beehive (www.beehive.de) do what is allegedly quite a good guide to ZClasses, which you'll want to know at some point. You should be using Zope 2.2 as well. This has a Tutorial you can go through which may cover the stuff above better (it should certainly be a lot more up to date ;-) as well as a great 'help' button. It should also have all the decent stable API's from http://www.zope.org/Members/michel/Projects/Interfaces documented in it by now. There should also be a Zope Book on its way from O'Reilly which hopefully make the whole thing a lot easier... If I've missed something, I hope someone else will jump in and say so :-) Hope this helps, Chris