[Zope-dev] Passing namespace to method

Morten W. Petersen morten@esol.no
01 Nov 2000 16:31:35 +0100


How do I construct a method of an object, so that whenever that method
is called, the current namespace is passed with it?

I.e.:

class myclass:
	[...]
	def myfunc(self, context):
		if context['sequence-index'] == 10:
			raise 'sequence-index is %s' % \
			context['sequence-index'] 

called from DTML, like so:

<dtml-in "objectValues('Spam')">
	<dtml-var myfunc>
</dtml-in>

will raise an exception if sequence-index is 10 or more?

Specifically, the reason I want this function is that I feel using

<dtml-if sequence-even>
	<tr bgcolor="<dtml-var color_sequence_even>">
<dtml-else>
	<tr bgcolor="<dtml-var color_sequence_odd>">
</dtml-if>

is a bit tedious (and ugly!) in the long run..

If this isn't implemented, where would the right place to implement it
be?

-Morten