巨石菜单作曲家
项目描述
dolmen.menu旨在通过Grok提供最灵活、最明确的方式来创建和管理菜单及其条目。
请注意...
dolmen.menu仅适用于Python 2.6。
dolmen.menu不支持子菜单,这是默认的。实现留给您自行决定。
组件
dolmen.menu提供两个组件
菜单:菜单实现基于zope的“内容提供者”概念,并使用grokcore.viewlet包。
条目:一个菜单项被称为条目。它是一个多适配器,注册为菜单组件。
示例
一个菜单组件
>>> from dolmen import menu >>> class MyMenu(menu.Menu): ... menu.title('My nice menu')
一个菜单条目
>>> class MyMenuEntry(menu.Entry): ... menu.order(1) ... menu.name('a_direct_entry') ... menu.title('My Entry') ... menu.menu(MyMenu)
注册
为了使用作为菜单条目的基本Grok组件,我们有两种注册方式。
类装饰器
类装饰器允许您装饰任何类,以便将其注册为菜单条目
>>> import grokcore.view >>> @menu.menuentry(MyMenu) ... class TestEntry(grokcore.view.View): ... def render(self): ... return u"A simple entry"
模块级别的martian指令
martian指令允许您显式地注册您不能装饰的类(例如来自外部包的类)
>>> class SomeView(grokcore.view.View): ... def render(self): ... return u"I'm a view and I want to be a menu entry" >>> menu.global_menuentry(SomeView, MyMenu, order=2)
更改
0.5 (2011-01-31)
dolmen.menu现在可以在最新的martian上运行。通过使用模块注解,装饰器的处理已被延迟。注册现在由全局grokker完成。
0.4 (2010-12-24)
现在可以定义一个菜单上下文,它与渲染上下文不同。这允许委托渲染,例如根菜单或其他对象特定菜单。
0.3 (2010-06-04)
修复了一个错误,其中“zope.Public”被评估为“正常”权限。现在,管理员将权限转换为CheckerPublic标记。
现在,filter方法是一个生成器。
0.2 (2010-03-05)
更改了获取菜单CSS ID的方式。
0.1 (2010-03-03)
初始发布。
项目详情
关闭
dolmen.menu-0.5.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1b7700492d46ccad200b1b3b4c713ed84bcc6ee0d8473e9ba788ae0f06494839 |
|
MD5 | 21768bc44a0175f2bd1bff3300415b72 |
|
BLAKE2b-256 | 978dc1d460acae1fbd03b140b111d72ec9f8735ddee3ae3e728700c924243806 |