[Zope] NEWBIE: assign next free ID automatically
Max Møller Rasmussen
maxm@normik.dk
Mon, 23 Oct 2000 10:12:31 +0200
This is untested, but an idea:
<dtml-in "objectValues()[:-1]" sort=id reverse>
<dtml-call "REQUEST.set('new_id', id+1)">
<dtml-var new_id>
It is still subject to failure if 2 or more processes are writing an article
in the same time.
Furthermore it has to find and sort all the items in the folder. That could
take a long time if there are lots of them.
Maybe you should somehow insert a dtml-try until you succed in writing the
article.
Another aproach would be to have the folder with your articles have a
property "lastID" and let "nexID" be a method that automatically would
increment lastID end return it.
Maybe it is possible to lock the lastID property??
>From: Patrick Koetter [mailto:p@state-of-mind.de]
>What is it that I want to do?
>I want to evaluate the highest ID (all are 'int') within the folder and
>assign the next highest.
>I'm sure this is easy to you...