[Zope] Passing parameters from python to dtml objects..
Tom Jenkins
tjenkins@devis.com
31 Oct 2001 11:05:53 -0500
On Wed, 2001-10-31 at 09:26, Shane O'Sullivan wrote:
> hi all,
> I am currently working on a python script that is called from a
> dtml method. It performs some logic and then calls another dtml method.
> I am passing 2 parameters into the python script, "hidden_photo" and
> "photo_name"..my python script looks like this...
>
> if photo_name == ' ':
> if hidden_photo == ' ':
> return context.scReport(context)
> elif hidden_photo == 'None':
> return context.scReport(context)
> else:
> return context.Thumbnails.deletePhoto(context)
> return context.scReport(context)
> elif photo_name =='None':
> return context.scReport(context)
> else:
> return context.Thumbnails.photoAction(context)
> return context.scReport(context)
>
> The methods photoAction and deletePhoto need to be passed the parameters
> "hidden_photo" and "photo_name" - however it dosn't seem to be getting
> them properly- this is the error message
> Error Type: NameError
> Error Value: global name 'photo_name' is not defined
>
> Can anyone tell me how properly to pass parameters from python to dtml
> objects?
>
> Thanks in advance,
> Shane
>
first, get acquainted with www.zopelabs.com which has all sorts of user
submitted recipes.
second (from http://www.zopelabs.com/cookbook/992031125 ) the proper way
to call dtml from python scripts is:
dtmlMethod(context, context.REQUEST)
# or if _ is bound to the (Script) Python in the bindings tab
dtmlMethod(context, _)
third if you pass keyword arguments to a dtml method they will be
available for use in the dtml method. so you should call your dtml with
context..ThumbNails.deletePhoto(context, context.REQUEST,
hidden_photo=hidden_photo, photo_name=photo_name)
HTH
--
Tom Jenkins
Development InfoStructure
http://www.devis.com