本文整理匯總了Python中Products.CMFPlone.browser.navtree.SitemapNavtreeStrategy.rootPath方法的典型用法代碼示例。如果您正苦於以下問題:Python SitemapNavtreeStrategy.rootPath方法的具體用法?Python SitemapNavtreeStrategy.rootPath怎麽用?Python SitemapNavtreeStrategy.rootPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Products.CMFPlone.browser.navtree.SitemapNavtreeStrategy
的用法示例。
在下文中一共展示了SitemapNavtreeStrategy.rootPath方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: siteNavStrategy
# 需要導入模塊: from Products.CMFPlone.browser.navtree import SitemapNavtreeStrategy [as 別名]
# 或者: from Products.CMFPlone.browser.navtree.SitemapNavtreeStrategy import rootPath [as 別名]
def siteNavStrategy(self):
context = aq_inner(self.context)
selected_tab = self.selected_portal_tab
obj = api.portal.get()[selected_tab]
path = {'query': '/'.join(obj.getPhysicalPath()),
'navtree': 1,
'navtree_start': 2,
'depth': 2}
query = {
'path': path,
'review_state': 'published',
'portal_type': ('hph.sitecontent.mainsection',
'hph.sitecontent.contentpage',
'hph.lectures.coursefolder')
}
strategy = SitemapNavtreeStrategy(obj)
strategy.rootPath = '/'.join(obj.getPhysicalPath())
strategy.showAllParents = True
strategy.bottomLevel = 999
tree = buildFolderTree(context, obj, query, strategy)
items = []
for c in tree['children']:
item = {}
item['item'] = c['item']
item['children'] = c.get('children', '')
item['itemid'] = c['normalized_id']
item_id = c['normalized_id']
if item_id == context.getId():
item['class'] = 'active'
else:
item['class'] = ''
item['parent'] = self.compute_parent_marker(item_id)
items.append(item)
return items
示例2: update
# 需要導入模塊: from Products.CMFPlone.browser.navtree import SitemapNavtreeStrategy [as 別名]
# 或者: from Products.CMFPlone.browser.navtree.SitemapNavtreeStrategy import rootPath [as 別名]
def update(self):
query = self.request.get('q', None)
self.tab = self.request.get('tab', None)
uids = None
if self.tab == 'recent':
pass
elif self.tab == 'clipboard':
brains = list(self.search(''))[:2]
uids = [b.UID for b in brains]
result = self.search(query, uids=uids)
strategy = SitemapNavtreeStrategy(self.context)
result = [strategy.decoratorFactory({'item': node}) for node in result]
if self.tab == 'content-tree':
portal_state = getMultiAdapter((self.context, self.request),
name=u'plone_portal_state')
portal = portal_state.portal()
query_tree = {'sort_on': 'getObjPositionInParent',
'sort_order': 'asc',
'is_default_page': False}
strategy.rootPath = '/Plone'
data = buildFolderTree(portal,
obj=portal,
query=query_tree,
strategy=strategy)
result = data.get('children', [])
self.level = 1
self.children = result