原型字段遍历器

archetypes.fieldtraverser的Python项目详细描述


概述

archetypes.fieldtraverser用于遍历到archetypes字段和 进入仓库。

它修补了products.archetypes,以便使用fieldtraverser访问 领域。

用例

  • 通过注释存储访问图像、文件或其他二进制数据,而不是传统的attributestorage。archetypes.fieldtraverser不需要为此修改traverse。优点:当使用存储在attributesTorage中的二进制数据访问对象时,无论是否使用,都会加载许多二进制数据块。在这样做的时候,zodb经常会受到不必要的压力。
  • 您可以将archetypes.fieldtraverser用于简单的web服务,这些服务只返回原型字段的内容,而不返回由小部件呈现的html。
  • 通过URL轻松访问字段内容,给您的朋友留下深刻印象。

用法

在url中,这个遍历器可以通过使用 字段名和存储变量(如需要)(如图像大小):

obj/+atfield++字段名

obj/+atfield++fieldname-storagename

示例

要从名为“photo”的字段访问原始图像,请执行以下操作:

obj/+atfield++照片

要访问名为“thumb”的缩略图,请执行以下操作:

obj/+atfield++照片拇指

依赖关系

产品原型

安装

像其他plone egg一样安装并导入genericsetup配置文件 在zmi中,portal_设置。

已知问题

imagewidget、filewidget和richwidget被修补以使用 访问二进制内容的符号。修补程序已完成 通过更新字段的属性,然后将其复制到混凝土中 阴谋家。 但是我们的默认修补程序机制不影响atcontenttypes(并且可能 其他conenttypes也是),因为它们是由zope在修补程序加载之前加载的。 应用。这同样适用于Plone3.2中的蛋制品,因为 products.atcontenttypes被zope/five视为产品,因为 “产品”名称空间的。因此products.atcontenttypes在 所有的鸡蛋都装了。 所以我们还必须修补contenttypes的具体内容。有关详细信息,请参见patch.py 信息。

请注意,richwidget能够上传和下载文件,并且 因此,我们还提供自定义的fieldtraverser-aware小部件。但是 默认情况下,richwidget模板中的上载/下载功能被禁用 和设置。richwidget修补只是为了完整性。

因此,如果您在“products”名称空间中包含自己的产品或鸡蛋,那么 还必须修补您的内容类型,才能使用我们的fieldtraverser感知小部件。 考虑到这一点,使用本产品应该不是问题。

祝您愉快

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

学分

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JasperReports中的java对齐项目符号   Jboss中的java类加载问题   Spring引导的java示例,RabbitMQ侦听器用nack响应   java设置http请求的类型   Java数组:使用私有字段的对象访问   java将变量传递到另一个视图:最佳实践   Java图形禁用xor模式   java如何使用安卓设备中存储的mupdf阅读器读取SD卡中存储的pdf文件   java My webapplication在IDE中测试时工作正常,但在Web服务器(tomcat)上不工作会话无效   java如何设置铃声播放的持续时间   寻求用java编写正则表达式的帮助   帆布Java中从右向左的drawText   java可以停止使用httpConnection连接到URL的线程。连接()?   java InputStream在验证javax后为空。xml。验证。验证器;   安卓在一个java类中有多个seekbar,需要为每个seekbar实现每个setOnSeekBarChangeListener吗?   java ConcurrenthashMap与线程安全   Tomcat中java奇怪的JSONString失真   C++ java JNI跨平台构建   java是由:org引起的。usb4java。LoaderException:在classpath/org/usb4java/windowsx86_64/libusb1中找不到本机库。0.dll