[Zope] How to find out the full URL

J Cameron Cooper zope-l at jcameroncooper.com
Wed May 11 16:16:28 EDT 2005


Hong Yuan wrote:
> I have a page template, say 'products.pt', which takes 
> traverse_subpath[0] as one of the variables, so e.g. the URL:
>  http://myserver/products/100
> will actually call products.pt, which get 100 from the URL and displays 
> it in the template.
> 
> Now my question is how can I get the full URL from within the tempalte 
> 'products.pt'? If I use 'request/URL' it will show 
> 'http://myserver/products' only, with the subpath somehow dropped. How 
> can I get the '/100' part back?

If you simply print the request object, you'll see everything available. 
The CGI environment variables are available: 
http://hoohoo.ncsa.uiuc.edu/cgi/env.html

You can use ACTUAL_URL or URL0 to get the full url+path.

You can use PATH_TRANSLATED or PATH_INFO to get just the path portion.

You can use QUERY_STRING to get the query string.

> Ideally, I'd like to get back the whole URL as entered in the browser as 
> a string. From the REQUEST I have to put together URL and QUERY_STRING, 
> and the section (#xxx) part of the url can not be found in REQUEST.

Unfortunately the CGI vars don't make provision for the anchor component 
or the whole unaltered URL. Don't even know it that's possibly without 
modifying ZPublisher.

		--jcc
-- 
"Building Websites with Plone"
http://plonebook.packtpub.com/


More information about the Zope mailing list