[Zope3-Users] request ?param=val
Pete Taylor
baldtrol at gmail.com
Sun Apr 9 21:32:17 EDT 2006
Thanks Cliff :)
I actually figured out what the issue was... i was getting my request
args at the __init__ of the page. I had intended to pull the arg out
of the request when the page was built, then use it later. i hadn't
considered that form.Form reruns __init__ on submit, which meant that
by the time i wanted the arg to be processed, it "was no more" in the
request. i just set up the page to process the request args as the
page is drawn the first time, rather than wait for a submit button to
be pressed.
thanks for the suggestion though, i'll keep it in mind if I end up
needing to process a request that way!
Pete
On 4/9/06, Cliff Ford <Cliff.Ford at ed.ac.uk> wrote:
> I set out to help with an answer to your question this morning, and
> found a bug in my own code that has kept me busy all day. Thanks! Just a
> couple of thoughts:
>
> Are you acquiring the request object from self? If you have a class with
> a function that does some processing:
>
> def getId(self):
> id = self.request['id']
>
> Make sure you have the request object Ok.
>
> It is not completely clear that you are not just calling one page
> template from another. So a link in page 1:
>
> <a href="page2.html?id=9999" title="Page 2">Next</a>
>
> could be used in page2.html like this:
>
> <p>Request ID = <span tal:content="request/id | nothing"></span></p>
>
> Just check that that works.
>
> HTH
>
> Cliff
>
> Pete Taylor wrote:
> > Hi all,
> > I must just be overlooking something, but i'm running into a
> > problem... (could be that it's 4:00a on a saturday morning, and i'm
> > writing code for work. that alone might be my problem ;) ).
> >
> > I have a url like the following:
> > http://localhost:8080/MyObject/activate.html?id=99999999
> >
> > the trouble is, I can't seem to figure out how to get the id= bit back
> > from the request. i've read the help on BrowserRequest and
> > HTTPRequest, and I can see that in _environ there should be a
> > "QUERY_STRING" associated with the request, if there are positional
> > arguments. however, i can't seem to get at them.
> > request.getPositionalArguments just returns ().
> >
> > basically, i've set up a two-phase registration page, where a user can
> > register, and a link, along with username and password, is mailed to
> > them. I'd like for them to just be able to click the link, have it
> > hit a view that can process that link, and redirect them to the login
> > page.
> >
> > the registration and emailing of the link works just fine. but the
> > link itself won't process. i have "activate.html" set up as a page
> > name for a form i built in formlib... activate is actually the method
> > i want to call, but even trying the url with activate?id=9999 doesn't
> > do anything.
> >
> > i'm at a loss for what to do next. where should i look to figure this
> > out? and does formlib even support this kind of thing, or should i be
> > using something else?
> >
> > thanks!
> > Pete
> >
> > --
> > "All guilt is relative, loyalty counts, and never let your conscience
> > be your guide."
> > - Lucas Buck, American Gothic
> > _______________________________________________
> > Zope3-users mailing list
> > Zope3-users at zope.org
> > http://mail.zope.org/mailman/listinfo/zope3-users
> >
>
--
"All guilt is relative, loyalty counts, and never let your conscience
be your guide."
- Lucas Buck, American Gothic
More information about the Zope3-users
mailing list