多尔曼应用内容实用
dolmen.app.content的Python项目详细描述
dolmen.app.content为dolmen提供现成的实用程序 应用程序内容。
开始
我们导入grok并对包进行grok:
>>> import grok >>> grok.testing.grok('dolmen.app.content')
我们创建一个dolmen.content
>>> import dolmen.content >>> class Mammoth(dolmen.content.Content): ... grok.name('A furry thing') >>> manfred = Mammoth() >>> manfred.title = u'A nice mammoth'
索引
dolmen.app.content注册两个索引来对 dolmen.content.ibasecontent在dolmen应用程序中创建:
>>> from dolmen.app.content import indexes
基本指数
dolmen.app.content.indexes.baseindexes处理ibasecontent内容的标题和内容类型:
>>> indexes.BaseIndexes.__grok_indexes__ {'content_type': <grok.index.Field object at ...>, 'title': <grok.index.Text object at ...>} >>> indexes.BaseIndexes.__grok_indexes__['content_type']._attribute '__content_type__'
可搜索文本
dolmen.app.content提供了一个简单的“isearchabletext” 实现,允许全文搜索。它分为两部分。
索引:
>>> indexes.SearchableIndex.__grok_indexes__ {'searchabletext': <grok.index.Text object at ...>}
适配器:
>>> from zope.index.text.interfaces import ISearchableText >>> adapter = ISearchableText(manfred) >>> adapter.getSearchableText() u'A nice mammoth'
缩略图
多亏了dolmen.thumbnailer,dolmen.app.content提供了一个基础 缩略图策略,使用zodb blob作为存储并引入新的 规模。
刻度
让我们反省一下我们的小型化组件:
>>> from dolmen.app.content import thumbnails >>> thumbnails.BlobMiniaturizer.factory <class 'dolmen.blob.file.BlobValue'> >>> print thumbnails.BlobMiniaturizer.scales {'mini': (250, 250), 'square': (64, 64), 'thumb': (150, 150), 'large': (700, 700), 'small': (128, 128), 'preview': (400, 400)}
新的比例尺“square”缩小并将原始图像裁剪为 提供方形缩略图。这是使用IThumbnailer适配器完成的:
>>> from dolmen.thumbnailer import IThumbnailer >>> thumbnails.SquareThumbnailer <class 'dolmen.app.content.thumbnails.SquareThumbnailer'> >>> IThumbnailer.implementedBy(thumbnails.SquareThumbnailer) True
学分
所有Dolmen套餐均由NPAI赞助(http://www.npai.fr)
更改日志
0.2.1(2010-02-25)
- 使用pil 1.1.7而不是pilwotk 1.1.6。这样就不必 声明第三方存档下载位置。
- 发布Grok 1.1rc1的维护清理。代码现在是 符合PEP8。
0.2(2010-02-01)
- 在configure.zcml中添加了dolmen.blob include。
- 正在清除依赖项。这个包现在是zope.app免费的,依赖于 最新的格罗克进化论。
0.1(2009-11-02)
- 初始版本