跳转到主要内容

Archetypes fieldtraverser

项目描述

概述

archetypes.fieldtraverser用于遍历到Archetypes字段并访问其存储。

它修补了Products.Archetypes,使其使用fieldtraverser来访问字段。

用例

  • 通过AnnotationStorage而不是传统的AttributeStorage访问图像、文件或其他二进制数据。archetypes.fieldtraverser消除了需要为此修改__bobo_traverse__的需要。优势:在访问存储在AttributeStorage中的二进制数据对象时,即使不需要,也会加载许多二进制数据块。当经常这样做时,ZODB将不必要地承受压力。

  • 您可以使用archetypes.fieldtraverser来简化Web服务,这些服务仅返回Archetypes字段的纯内容,而不包括小部件生成的HTML。

  • 通过轻松通过URL访问字段内容,给您的朋友们留下深刻印象。

用法

在URL中,此遍历器可以通过使用字段名和所需的存储变体(如图像大小)来访问字段数据

obj/++atfield++FIELDNAME

或者

obj/++atfield++FIELDNAME-STORAGENAME

示例

要访问名为“photo”的字段中的原始图像

obj/++atfield++photo

要访问其以“thumb”命名的缩略图

obj/++atfield++photo-thumb

依赖关系

Products.Archetypes

安装

像安装其他任何Plone egg一样安装,并在ZMI中的portal_setup导入GenericSetup配置文件。

已知问题

ImageWidget、FileWidget和RichWidget已修复以使用++atfield++FIELDNAME符号来访问二进制内容。此修补是通过更新字段_properties来完成的,然后将其复制到具体架构中。但是,我们的默认修补机制不会影响ATContentTypes(以及可能的其他内容类型),因为它们在应用修补程序之前由Zope加载。对于Plone 3.2中的eggified产品也是如此,因为由于“Products”命名空间,Products.ATContentTypes被Zope/Five识别为产品。因此,Products.ATContentTypes在加载任何egg之前加载。因此,我们也必须修复具体的ATContentTypes。有关更多信息,请参阅patch.py

请注意,RichWidget具有上传和下载文件的能力,因此我们还提供了自定义的字段遍历器感知小部件。但是,上传/下载功能默认在RichWidget模板和设置中禁用。RichWidget修补只是为了完整性。

因此,如果您在“Products”命名空间中包含自己的产品或egg,您还必须修补您的内容类型以使用我们的字段遍历器感知小部件。考虑到这一点,使用此产品应该不会有问题。

为了您的乐趣

当在您的Plone站点中打开“++resource++plone.jpg”时,可以找到一个“复活节彩蛋”。有关更多信息,请阅读archetypes/fieldtraverser/tests/plone.jpg.CREDITS

致谢

项目详情


下载文件

下载适合您平台的应用程序。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

archetypes.fieldtraverser-0.4.4.tar.gz (37.2 kB 查看哈希)

上传

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面