[Zope] Passing parameters from python to dtml objects..

Shane O'Sullivan shane.osullivan@engitech.ie
Wed, 31 Oct 2001 16:12:35 -0000


Excellent...It has started working - thank you all for your help
Shane

----- Original Message -----
From: Tom Jenkins <tjenkins@devis.com>
To: Shane O'Sullivan <shane.osullivan@engitech.ie>
Cc: <zope@zope.org>
Sent: Wednesday, October 31, 2001 4:05 PM
Subject: Re: [Zope] Passing parameters from python to dtml objects..


> 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
>
>
>
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists -
>  http://lists.zope.org/mailman/listinfo/zope-announce
>  http://lists.zope.org/mailman/listinfo/zope-dev )