I am working on a product in which one of the objects keeps an array. I've already overcome the problems with making the array persistent (i.e. by not using .append, but intead re-assigning the array each time). Anyway...I digress.. So I have this object that has an array..A folder may contain several of these items, so I loop over them in DTML like this: <dtml-in "objectValues('My Object')"> <dtml-var id> </dtml-in> This prints out the id of each of my objects. But I ALSO want to print out the contents of the array, indented after each instances id. What is the best way to do this in DTML? Is there as way? Lets say for arguments sake that each array element is a string, how do I iterate through the array and print the strings. Lets say each element in the array is anothe array (of 5 elements), How do I loop over the array and pull out the sub arrays and print those five elements? Any help/direction would be appreciated, I've checked the docs and refered to some sample products but I either missed something obvious (probable) or It's hard..or something :-) -- ...EAM... edwardam@home.com edwardam@handhelds.org ----------------------- 'It's because crappy programs offend me.' --Eric Raymond Grow a ponytail -- view it as your telepathic antenna to other Linux Kernel Developers. -- Jeff V. Merkey
From: Edward Muller
I am working on a product in which one of the objects keeps an array. I've already overcome the problems with making the array persistent (i.e. by not using .append, but intead re-assigning the array each time). Anyway...I digress..
It is probably easier to write: self._p_changed = 1 # Trigger persistence at the end of a method where you use mutable properties. the: tempList = self.contentList tempList.append(newContent) self.contentList = tempList gets tired real fast especially if you have more than one list you need to update. self.contentList.append(newContent) self._p_changed = 1 Is so much simpler, and makes the code much easier to read. A way you might cheat persistence could be to (untested): self.id = self.id But then again, why do that when you only need to set _p_change to true. The persistence doesn't get triggered for every parameter. Either an object has changed or it hasn't. So you don't have to trigger it individually for every list or whatever you use in your object. regards Max M Max M. W. Rasmussen, Denmark. New Media Director private: maxmcorp@worldonline.dk work: maxm@normik.dk ----------------------------------------------------- Specialization is for insects. - Robert A. Heinlein
participants (2)
-
Edward Muller -
Max M