问题标签 [plone-4.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
92 浏览

plone - 克隆更新收集过滤器

我可以从 Plone Collection (plone.app.collection) 更新过滤器吗?

我有一个带有这些过滤器的集合:

使用 BrowserView (Form) 我想扩展这个过滤器:

我怎样才能做到这一点?

0 投票
1 回答
139 浏览

python - 如何在 Plone 上扩展扩展内容类型

我正在调查插件及其架构扩展器、接口、适配器、提供程序……但我不知道如何扩展扩展架构。我会更好地解释我的情况:

我有三个插件:L、H 和 V,其中 L 是“基础”插件。所以 H 取决于 L 的内容类型,因为它是 L 的扩展。内容扩展是使用 archetypes.schemaextender 包制作的。

现在我要实现V,应该是H的扩展,实现如下结构:

L → H → V

插件“L”:

此插件具有定义为类 Batch(ATFolder) 的内容类型。这个插件也有它自己的模式和他们的接口标记 IcontentA。

批处理.py

接口.py

插件“H”</h2>

此插件从 L 获取内容类并对其进行扩展

批处理.py

配置.zcml

好的,现在我想用另一个插件扩展内容的架构。我做了类似的事情:

插件“L”:

批处理.py

接口.py

插件“H”</h2>

批处理.py

配置.zcml

接口.py

插件“V”:

批处理.py

接口.py

配置.zcml

正如您所期望的那样,它不起作用......但我不知道是否可以扩展扩展类。我必须指出,每个类都有自己的init,getFieldsgetOrder功能。如果我更改 V 插件上的适配定义,我会收到错误消息。V 插件中的每个函数都有一个 `pdb.set_trace() 定义,但实例不会停止......

编辑:我在这封邮件中发现:“你不能覆盖覆盖。你唯一的希望可能是 z3c.unconfigure:

http://pypi.python.org/pypi/z3c.unconfigure "

0 投票
1 回答
66 浏览

plone - 新原型对象的自动重命名(Plone 4)停止工作

我有一个 Plone 4 站点,它停止重命名新的 Archetypes 对象;在创建(类似于/temp/portaltype.2015-04-23.1234567890)并保存第一个更改(包括给它一个标题)之后,它应该被重命名为更好的东西(/temp/an-object-with-a-meaningful-name),但这不会再发生了。

当我应用一些更改将 Plone 从 4.3.3 更新到 4.3.4 (一次迈出一步)时,可能会出现问题;但我继承了一个 long versions.cfg,它仅按包名称排序,不包括任何选择某些版本的提示......

我可以回去两个月并拥有一个可以重命名的版本,但是如果没有更多关于要查找什么的知识,重新应用每一个更改、重建、启动和测试将是一个非常耗时的过程; 但我的架构定义没有任何变化。我有一个temp浏览器参与提供主要编辑表单。但这似乎不是储蓄行动的情况。

遗憾的是,我还没有完全理解base_edit应该 - 据我所知 - 调用Archetypes.BaseObject.processForm和隐式调用的动作机制._renameAfterCreation,所以我会感谢一些如何调试它的指针。谢谢!

更新: 我的产品中有一些触发器configure.zcml,例如:

... 与,在events.py

instance fg但是,该事件似乎没有被触发,因为我在会话中找不到输出。

更新 2: 我注意到它zope.event已被固定到一个相当旧的版本 ( 3.5.2),所以我现在正在尝试更认真地更新到 4.3.4 (遵循这个操作方法)。这让我得到了zope.eventv4.0.3,但我现在有版本冲突:

似乎对zc.recipe.egg < 2dev某个地方有要求,但我找不到。

0 投票
5 回答
278 浏览

plone - 在 Plone 构建设置中查找需求规范

我有一个 Plone 站点(大约 4.2.4,从version.txt根目录中的 a 告诉)我想更新到最新版本(我找到了这个操作方法)(截至目前,4.3.4);我继承了过多的固定版本,这些版本没有记录并且可能已经过时。

当注释掉我的versions.cfg,使用http://dist.plone.org/release/4.3-latest/versions.cfg而不是重新运行buildout-vvv,我得到:

所以似乎对 sub-2 版本有一些要求zc.recipe.egg,但我找不到。(在我的versions.cfg情况下,它被固定在2.0.1- 令人惊讶的是它曾经可以工作。)

find我用and搜索了树grep,寻找rc.recipe.egginversion*.cfgsetup.py文件,但除了在我的项目根目录中找不到任何东西。我什至搜索了下面的每个文件.../src/collective.mathjax,但没有成功。

我怎样才能找出这种依赖关系?谢谢!

0 投票
2 回答
56 浏览

plone - 是否有一种克隆产品可以将带有附加文件和图像的页面捆绑在一起并像处理一个对象一样处理它?

我们或多或少有与Plone 相同的问题 - 关于在页面中存储图像和文件附件的最佳实践?.

我们远离基于 Zope 的安装,我们有一个自制对象,它将页面和任意文件捆绑在一个目录中,例如:

可以将对象和所有包含的文件作为一个对象导入/导出/删除/复制/粘贴/...。

Plone有类似的东西吗?

例如,我们希望在页面本身附近存储从一个页面链接的图像。自动将它们从导航中隐藏。通过 Plone 工作流程一次性发布它们,创建翻译并创建包含所有附加文件的工作副本。因此,所有正常的 Plone 操作都应该透明地“正常”工作。

是否已经有一些产品添加了这种增强的“页面”类型?

具有全局图像文件夹的变体有一个缺点,即留下图像,然后删除引用页面,图像和页面不会自动具有相同的发布状态,aso

带有本地图像的变体有一个缺点,即您还需要处理每个图像的状态,并且您需要记住将它们从导航中隐藏。

0 投票
3 回答
479 浏览

python - 注销后如何设置 Plone 重定向到 came_from

我想在用户注销后设置一个 plone 网站以重定向到 url 中的 come_from 参数。对于我设置的登录string:${globals_view/navigationRootUrl}/login?came_from=${context/absolute_url},它正在工作。

对于注销,这不起作用。我也尝试了它的事件:

使用:

事件没问题, came_from 参数没问题,但代码没有按我想要的方式工作。该网站/logged_out每次都将我重定向到。

那么,我该如何设置呢?

0 投票
0 回答
80 浏览

unit-testing - 如何使用 plone.app.testing 和 PAS 插件模拟浏览器访问

我正在为 Plone 和内部测试覆盖开发一个 PAS 插件我也在测试生成的 HTML(我没有使用 zope.testbrowser 或类似的东西,我需要测试的东西非常简单)。问题是,当测试运行时调用堆栈与浏览器使用完全不同(在一个真实的 Plone 站点上,我复制了测试环境)。

这里有一个失败的测试:

上面的子文件夹是一个ATCT文件夹,我称之为默认视图(文件夹列表)。

现在,PAS 插件正在实现该checkLocalRolesAllowed方法。

发生了什么:

  • 使用浏览器,第一次调用checkLocalRolesAllowed是通过object= <ATFolder at subfolder>, user='users2'
  • 运行测试第一次调用checkLocalRolesAllowed是在门户根目录上完成的:object= <PloneSite at plone>, user='user2'

在这两种情况下,该方法都被调用了很多额外的时间(这是正常的),但调用顺序完全不同。

测试中,子文件夹上下文仅在堆栈顺序中排在第 4 位(前两次是 Plone 站点,第三次是 ZCatalog)。

从“好”行为是浏览器再现的事实出发,如何在测试中模拟相同的行为?为什么portal.folder.subfolder()在第一次通话时使用 Plone 站点?

注意:我测试了其他组合,例如使用restrictedTraverse, portal.folder.subfolder.folder_listing(), ... 没有任何效果。

0 投票
0 回答
37 浏览

plone - 我需要更改 Ploneboard 上的消息顺序

我在 Plone 4.2.4 上运行 Ploneboard 3.2,需要更改消息的顺序,以便最新消息出现在列表中的第一位。我只有有限的 Plone 和 Zope 经验,因此感谢您的考虑!这可以简单地通过配置实现还是与工作流程相关?

0 投票
1 回答
255 浏览

plone - Plone 4.3 AssertionError 运行 Buildout

我们最近得到了一台新的 Linux 机器,它从我们当前的 plone 安装所在的旧机器上重新映像。我正在尝试在新机器上运行 buildout,但我在我们的 plonetheme src 产品上收到了这个 AssertionError。

我们产品的init .py 脚本包含以下内容:

我在这里看到了类似的错误报告,但提供的答案不适用于我们的案例。我们在 src 中有其他产品,但这是唯一引起问题的产品。

有人可以帮我们解决这个错误吗?

0 投票
2 回答
164 浏览

plone - 搜索多个克隆站点索引

我需要在不同的服务器/机器上实现对多个克隆站点的集中搜索。如果有办法选择要搜索的站点将是一个加号,但不是主要问题。我遇到的几种方法是:

- 将 ZCatalog 索引导出到 XML 文件,并定期使用爬虫获取所有 XML 文件,以便对它们进行搜索,但这种方式不允许实时搜索。

- 有一种使用通用目录的方法,但它不是最佳的,并且由于某些要求而无法在我正在处理的站点上实施。

-我在某处读到他们使用 solr,但我需要有关如何使用它的帮助。

但是我需要一种方法来使用现有的 ZCatalog 和索引,而不是创建另一个索引,因为我认为使用 solr 的情况是由于额外的开销和需要维护的额外索引。但是如果没有其他解决方案可能会使用它。我是搜索的初学者,所以请尽可能提供详细信息。