问题标签 [plone-3.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.
python - 在 Windows 上将 Plone egg 安装为 Python 模块
我有一个 Plone 站点(Plone 版本 3.1.2),我需要在该站点上安装一个名为 GrufSpaces 的产品(http://plone.org/products/grufspaces)。但是,它是一个生产站点,因此我不能轻易将其取下来将 Plone 升级到 3.2+ 以使用构建;使用 buildout 可以让我轻松地将 Grufspaces(collective.groupspace.roles 等)添加为产品。
我已经分别下载了 egg 文件(角色、工作流、邮件、内容)并将它们放在一个目录结构中,如下所示:
- 集体/
- __init__.py
- 组空间/
- __init__.py
- 内容/...
- 角色/...
- 工作流程/…</li>
- 邮件/...
我认为我可以做的是将这个“集体”文件夹添加到 [plone directory]/Zope/lib/python 作为 Python 模块。这个想法一旦添加,我可以重新启动 Plone/Zope,它会自动将其拾取并使其在 Plone 中作为 Python 模块可用。不幸的是,它还没有起作用。
如果我以错误的方式解决这个问题,我欢迎任何建议以不同的方式尝试。
python - 禁用克隆原型索引/转换 doc/pdf 文件
如果我在 plone 中重建我的目录,我会得到许多这些信息:
这发生在 .doc 和 .pdf 文件上。
我不想转换文档或 PDF。我怎样才能完全禁用它?
python - 在 plone.htmlhead 将 JSS 与 CSS 分离
我在需要性能调整的项目中使用 Plone 3.1.7。其中一项调整要求 CSS 应位于页面顶部,而 JS 应位于底部。然而两者都位于
在 main_template 中。我如何拆分这些?
提前致谢
configuration - Plone3:portal_type 权限的导出如何更改
我去了zope
manage的地址:
输入名为“”的我的 plone_site ,然后foo
单击portal_types
链接。
浏览名为“ MyContentType
”的内容类型,然后单击选项卡Permissions
。
更改了一些权限以分配给某些角色,等等...
现在,我去portal_setup
尝试导出此更改,但没有找到导出该更改的选项。
我只Security
在plone_site
.
那么,如何在portal_type
工具下导出我对指定内容类型权限的配置呢?
plone - 如何以编程方式控制对象的允许内容类型的添加菜单列表?
我想务实地控制单个对象的允许内容类型的添加菜单列表。
我正在使用 archgenxml 构建内容类型的集合。在一种情况下,我有一个由 RangeBase 类组成的模拟类,该类具有三个实现,valueRange、vectorRange 和 uniformRange。模拟可以只包含一个范围,即 RangeBase 的多重性是一,因此模拟的添加菜单应该提供所有三种范围类型或根本不提供。
为此,我想订阅 IObjectInitializedEvent 和 IObjectRemovedEvent 事件;将它们各自的处理程序 initializedHook 和 removedHook 放在 RangeBase 类中。处理程序将请求对象的本地允许类型列表,并相应地删除或添加三个范围。在阅读了 Plone 的“社区开发者文档”之后,我认为 initializedHook 代码可能看起来像这样:
不幸的是,我的模拟类没有这些功能。
是否有一个适配器可以为我的模拟类提供此功能,或者是否有其他完全不同的方法来实现所需的菜单行为?任何建议,将不胜感激。
plone - 如何在 ore.viewlet.core.FormViewlet 中覆盖 zope.formlib @form.action 方法
概括:
- 克隆 3.3.4
- Products.PloneGetPaid 0.8.8
- 矿石.viewlet 0.2.1
我正在尝试覆盖从 ore.viewlet.core.FormViewlet 继承的 viewlet 类。它有两种装饰方法@form.action
(从 zope.formlib 导入)。我只需要覆盖其中一个。如果我也没有定义另一个,它的动作是不可用的。所以我定义了它,试图简单地传递父类的返回值。但后来我得到一个TypeError: 'Action' object is not callable
.
细节:
具体来说,我将覆盖 Products.PloneGetPaid.browser.cart.ShoppingCartActions,其定义如下:
我定义了从这个继承的重写类。两种装饰方法是:
和
我真的只关心覆盖第一个。我想让另一个人一个人呆着。这两个@form.action 方法在购物车管理页面的“下一步”视图中生成“继续购物”和“结帐”按钮。如果我只在我的子类中定义“继续购物”方法,“结帐”按钮就会消失。所以我尝试像这样定义 Checkout 方法:
但后来我得到这个错误:
这让我觉得必须有一些技巧来覆盖和继承用@form.action
.
任何提示将不胜感激。
谢谢!
plone - 使用 XDV 向 body 元素添加类
我想在 Plone3+collective.xdv 中为某些表单设置样式,但我不希望所有表单都获得特殊样式。
所以我想在显示某些模板时为元素的属性添加一个特殊的styled-form
类名:class
body
- 联系方式
- sendto_form
- PFG 表格
所以我认为我可以设法使用 XDV 执行此操作,以免修改这些模板。
通过使用if-content
XDV 规则中的指令,我可以检查是否正在显示这些模板:
例如。
但是我找不到保持Plone 提供的类属性并根据该条件添加特殊类的方法。
我想要的结果是这样的:
提前致谢。
plone - 无法从 portal_setup 导出工作流
我在portal_workflow
(让我们命名my_workflow
)中创建了一个新的工作流程,我正在尝试使用portal_setup
但没有成功导出它。我过去曾在其他工作流程中这样做过,而且效果非常好。但是,不知何故,我创建的最后一个工作流程无法导出。
导出时,新创建的工作流显示在 中,workflows.xml
但不存在。导出其他工作流程(包括一些自定义工作流程)。workflows/my_workflow/
workflows/my_workflow/definition.xml
有什么我不知道会阻止导出我的新工作流程吗?portal_catalog
, 某物?
编辑:尝试提取文件时出现此错误。这是相关的吗?只是my_workflow
没有出现在我的 tar.gz 中。
plone - 避免删除对象(使用 IObjectWillBeRemovedEvent)并重定向到自定义视图/模板?
我想中止删除对象(自定义 Content-Type),并重定向到将工作流设置为名为的自定义状态的页面(视图),Unavailable
向用户显示消息“您已成功删除对象! ”。该对象仍会在 ZODB 上,但对于某些组来说,它根本就不会被看到,就好像它真的被删除了一样。
我可以使用 对订阅者进行加薪IObjectWillBeRemovedEvent
,但尝试使用raise zExceptions.Redirect("url")
是行不通的。该raise
调用避免了删除,但显示消息“无法删除对象”而不是重定向。
有人有解决这种情况的方法吗?
plone - 有没有办法做一个保持层次结构的portal_catalog?
认为:
如果我使用文件夹作为路径做一个portal_catalog,我得到:
但我想要一个保留分层上下文的 portal_catalog,例如:
所以,如果它是一个文件夹类型,它的 id 是来自字典的键。
是否可能有类似的数据结构(保持对象的层次结构),或者我必须创建自己的递归函数(我知道上面的结构可能不存在,但我认为你可以理解) ? portal_catalog
由于性能问题,我正在考虑使用和大脑。
谢谢!