[Zope] Problems with lists
Jonathan
dev101 at magma.ca
Tue Sep 5 13:51:08 EDT 2006
----- Original Message -----
From: larrymcdonnell at att.net
To: zope at zope.org
Sent: Tuesday, September 05, 2006 1:30 PM
Subject: [Zope] Problems with lists
I use the the following dtml commands to populate the db.
<snip>
<dtml-call "REQUEST.set('counter', REQUEST.SESSION['counter'])">
<dtml-call "REQUEST.set('loop_counter_temp', '0')">
<dtml-call "string_to_int(loop_counter_temp ,REQUEST)">
<dtml-call "REQUEST.set('loop_counter', y)">
<dtml-call "REQUEST.set('loop_counter', 1)">
<dtml-in expr="_.range(counter)">
<dtml-call "REQUEST.set('student_score1',
student_score1_temp[loop_counter])">
<dtml-call "REQUEST.set('student_score2',
student_score2_temp[loop_counter])">
<dtml-call "REQUEST.set('student_score3',
student_score3_temp[loop_counter])">
<dtml-call "REQUEST.set('student_score4',
student_score4_temp[loop_counter])">
<dtml-call "REQUEST.set('student_score5',
student_score5_temp[loop_counter])">
</dtml-in>
<dtml-call expr="create_holistic_score_record(REQUEST)">
But these are the results:
REQUEST
form
student_score1_temp ['2', '2', '2', '2', '2', '2', '2', '2']
Submit 'Submit'
student_score2_temp ['3', '3', '3', '3', '3', '3', '3', '3']
student_score3_temp ['3', '3', '3', '3', '3', '3', '3', '3']
student_score4_temp ['4', '4', '4', '4', '4', '4', '4', '4']
student_score5_temp ['5', '5', '5', '5', '5', '5', '5', '5']
</snip>
I can't figure out what your dtml prior to the loop is trying to accomplish,
however inside the loop your 'loop_counter' variable is a constant value (it
does not change, so you keep referring to the same list element). You need
something like:
<dtml-in expr="_.range(counter)">
<dtml-call "REQUEST.set('student_score1',
student_score1_temp[_['sequence-item']])">
The _['sequence-item'] will contain the current iteration result of your
_.range(counter) statement.
Better yet, do this in a python script (way easier).
hth
Jonathan
More information about the Zope
mailing list