Plone 4: Получить родительскую страницу в шаблоне портлета

У меня есть что-то вроде: сайт/страна-1/элемент-1/элемент-2/элемент-3

В пункте 3 у меня есть портлет. В своем шаблоне я пытаюсь показать заголовок Item 2 или Item 1. Как я могу это сделать?

<div tal:content="python:context.Title()"></div> дает мне Item 3.

<div tal:content="python:context.aq_parent"></div> дает мне <plone.app.portlets.portlets.classic.Renderer object at 0x7fa76b97a990>

<div tal:content="python:view"></div> то же: <plone.app.portlets.portlets.classic.Renderer object at 0x7fa76b97a590>

Мне нужна эта информация, чтобы внедрить решение для фильтрации новостей и событий по родительской стране на любом уровне.


person GhitaB    schedule 16.03.2017    source источник


Ответы (1)


Цепочка приобретения может отличаться от того, что вы ожидаете. Чтобы увидеть цепочку приобретения, проверьте context.aq_chain.

Возможно, вам повезет попробовать context.aq_inner.aq_parent. В любом случае я бы использовал представление plone_context_state, то есть: context/@@plone_context_state/parent.

Соответствующие ссылки:

person alepisa    schedule 16.03.2017
comment
context.aq_inner.aq_parent — идеально подходит для меня. Я попробовал context.aq_inner перед тем, как задать вопрос, но прекратил попытки из-за ошибки: Несанкционировано: вам не разрешен доступ к 'aq_chain' в этом контексте Большое спасибо! :) - person GhitaB; 16.03.2017