Pass the current context. It should have lineage and thus know how to get to 
where you are right now.

request.resource_url(request.context, '@@create')

Bert JW Regeer

> On Apr 22, 2020, at 14:05, Sydo Luciani <[email protected]> wrote:
> 
> Back to my original post, fixed the problem with stripping leading slash in 
> request.path in jinja template:
> {% set stripped_path = request.path | replace("/", "", 1) %}
> 
> And then passed stripped_path to request.resource_url:
> href="{{ request.resource_url(request.root, stripped_path, '@@create') }} ">
> 
> Please let me know if there is more elegant(Pyramid) way solution.
> 
> 
> On Wednesday, 22 April 2020 11:01:22 UTC-5, Sydo Luciani wrote:
> Application is using hybrid of traversal and URL dispatch.
> Here is the code:
> https://github.com/SystematicD/pyramid_wikiz/blob/master/__init__.py#L33 
> <https://github.com/SystematicD/pyramid_wikiz/blob/master/__init__.py#L33>
> 
> currently application working fine, but using session to save and passing 
> around 
> the coming_from_url or next_url is problematic in browsing application in 
> multi tabs.
> here is the code that needs to be changed.
> https://github.com/SystematicD/pyramid_wikiz/blob/master/templates/top_nav_bar.jinja2#L34
>  
> <https://github.com/SystematicD/pyramid_wikiz/blob/master/templates/top_nav_bar.jinja2#L34>
> 
> With appending the @@create to the end of full url, then traversed url always 
> stay the same after clicking on create button and no need to save the url in 
> session.
> 
> Checking document for generating hybrid:
> https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/hybrid.html#generating-hybrid-urls
>  
> <https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/hybrid.html#generating-hybrid-urls>
> 
> it is not clear how to generate the current application full url.
> 
> 
> Thanks
> 
> 
> On Wednesday, 22 April 2020 06:39:46 UTC-5, Steve Piercy wrote:
> Are you using traversal or URL dispatch? 
> 
> It seems that you don't want to pass in a `resource` as the 
> first argument to `resource_url`, so perhaps you want to use 
> https://docs.pylonsproject.org/projects/pyramid/en/latest/api/request.html#pyramid.request.Request.route_url
>  
> <https://docs.pylonsproject.org/projects/pyramid/en/latest/api/request.html#pyramid.request.Request.route_url>
>  
> ? 
> 
> --steve 
> 
> 
> On 4/22/20 at 2:18 AM, [email protected] <> (Sydo Luciani) pronounced: 
> 
> >root + path be the resource but passing request.url as resource 
> >throws error: 
> >href="{{ request.resource_url(request.url , '@@create') }}"> 
> > 
> >path = [loc.__name__ or '' for loc in lineage(resource)] 
> >AttributeError: 'str' object has no attribute '__name__' 
> > 
> > 
> >On Wednesday, 22 April 2020 04:11:00 UTC-5, Sydo Luciani wrote: 
> >> 
> >>tried href="{{ request.resource_url(request.url , '@@create') }}"> 
> >>but didn't work and got below error: 
> >>path = [loc.__name__ or '' for loc in lineage(resource)] 
> >>AttributeError: 'str' object has no attribute '__name__' 
> >> 
> >>Then tried href="{{ request.resource_url(request.root, 
> >>request.path , '@@create') }}"> 
> >>that I got double slash problem. 
> >> 
> >>Need to generate full URL and then append @@create. 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >>root, request.path , '@@create') }}"> 
> >>On Wednesday, 22 April 2020 02:42:44 UTC-5, Sydo Luciani wrote: 
> >>> 
> >>> This code: 
> >>>  href="{{ request.resource_url(request.root, request.path , 
> >>>'@@create')  }}"> 
> >>> 
> >>> Generates below URL: 
> >>>  https://domain_name.com:6543/%2FDir_1%2FDir_2/@@create 
> >>> <https://domain_name.com:6543/%2FDir_1%2FDir_2/@@create>  
> >>> <https://systematicd.com:6543/%2Fwiki%2FDir_2/@@create 
> >>> <https://systematicd.com:6543/%2Fwiki%2FDir_2/@@create>> 
> >>> 
> >>>  After domain_name:port, there is a '/' and a '%2F' which 
> >>>represents  another '/'. 
> >>>  double slashes after domain name, causing problem in 
> >>>finding the right  view  and the result is "page not found". 
> >>> 
> >>> Is there a workaround this problem ? 
> >>> 
> >>> Thanks 
> >>> 
> >>> 
> >>> 
> > 
> 
> ------------------------ 
> Steve Piercy, Eugene, OR 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "pylons-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/pylons-discuss/59678cc3-6d83-41f7-85b6-fe77bbe081f5%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/pylons-discuss/59678cc3-6d83-41f7-85b6-fe77bbe081f5%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/D0AFBB59-5120-4B06-8D38-7B16D86063D0%400x58.com.

Reply via email to