Я пытаюсь исправить навигацию по месяцам в портлете календаря, назначенном для настраиваемого менеджера портлетов. Этот менеджер вызывается из определенного шаблона страницы браузера с помощью:
<div id="calendar"
tal:content="structure provider:my.custom.portletmanager" />
К сожалению, менеджер не отображает для меня оболочку с хешем, поэтому я пытаюсь вручную добавить класс css kssattr-portlethash к указанному выше тегу Используя этот код, я получаю хэш, но навигация по календарю по-прежнему не работает. Как я могу получить доступ к информации портлета, такой как менеджер, категория, ключ и имя, чтобы правильно ее вычислить? Я бы хотел, чтобы у меня было поведение, описанное в column.pt из plone.app.portlets.browser.templates и его класс ColumnPortletManagerRenderer ( portlets / manager.py ), но я не знаю, как сделать так, чтобы мой пользовательский менеджер предоставлял эти ( т.е. как менеджеры по умолчанию).
from plone.portlets.utils import hashPortletInfo
class SectionHomeView(BrowserView):
"""SectionHome browser view
"""
implements(ISectionHomeView)
def __init__(self, context, request):
self.context = context
self.request = request
@property
def getHash(self):
info = dict(manager = 'my.custom.portletmanager',
category = 'context',
key = '/my-section',
name = 'mycalendar',
)
return hashPortletInfo(info)