问题标签 [dexterity]

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 回答
325 浏览

validation - 将不变量与 Dexterity 表单和字段集一起使用

我有一个从 plone.directives.form.Schema 派生的内容类型;它在四个字段集中有几十个字段。我正在尝试创建一个 zope.interface.invariant 来查看来自两个不同字段集的字段。

从跟踪行为来看,似乎每个字段集都调用了一次不变量,而不是整个表单。

我知道我可以提供自己的处理程序并在那里执行我需要的所有检查,但与明确定义的不变量相比,这感觉很笨重。虽然显而易见的解决方案是将相关字段移动到同一字段集,但当前设置反映了最终用户合乎逻辑的布局。

是否有一个现有的钩子,我可以在其中跨字段集对多个字段执行验证?

0 投票
1 回答
230 浏览

workflow - 具有工作副本(迭代)和工作流的敏捷内容类型

我正在尝试将正式的工作流程应用于我们定制的灵巧对象。Buildout 有 plone.app.versioningbehavior、collective.cmfeditionsdexteritycompat、collective.dexteritydiff plone.app.stagingbehavior、plone.app.referenceablebehavior。

我发现当我单击结帐时,它确实创建了对象的副本(copy_of_object),但对工作副本(对象)的引用被损坏了?此时如果我回到我的工作副本(对象),它会给出以下错误:

任何帮助都会很棒。这是我的完整引用

0 投票
1 回答
436 浏览

plone - z3c.forms 动态源提供程序返回空字典作为上下文对象

我正在使用 Plone 4.1.4 并且我正在尝试获取模式的动态源。选择工作,我需要填充国家列表,这又取决于上下文对象。

我正在使用这个例子: http: //plone.org/products/dexterity/documentation/manual/developer-manual/advanced/vocabularies

例如,对于 IContextSourceBinder,将返回一个空字典而不是实际的上下文对象:

当在 CountryGenerator.__call__() 方法中命中调试点并检查上下文对象时,后者结果只是一个空字典。

当我尝试在上面提到的文章中使用命名实用程序示例时,会发生类似的事情,上下文也有 {}。

谁能指出我可能做错了什么?

更新

调用表单的表单包装器的 ZCML 是

RegionClass 继承自 Form 包装器的地方,可能是权限问题还是遍历问题?

0 投票
1 回答
112 浏览

plone - ZMI 中 portal_types 工具中的别名选项卡

当我注意到 ZMI 中的 portal_types 工具中的别名选项卡时,我正试图调试与我的站点无关的问题。如果我尝试在使用灵巧的 Plone 4.1.5 站点中访问它,我没有得到任何响应。记录以下错误:

它适用于我照顾的一个单独的 Plone 3.3.6 站点。

Plone 4.1 是否仍支持此视图?

0 投票
1 回答
135 浏览

plone - 行为是否可以为其添加的字段指定自定义子表单

我正在尝试创建一种行为,该行为将 2 个新字段添加到应用它的内容类型,但我希望这些字段在添加/编辑表单上具有自定义子表单,用于添加到它的内容类型。作为行为的一部分,是否有任何直接的方法可以做到这一点?

0 投票
1 回答
598 浏览

dexterity - 删除按钮触发器不起作用 - 敏捷动态 GP

我正在查看 Microsoft Dynamics 自定义并在采购交易输入表单上创建触发器。

当我单击删除触发器时不会执行,因为 GP 询问消息“您确定要删除此记录”

这是cde片段

局部整数 l_result;

local string strMnuAddDocs = "PaperSave - 添加文档";

local string strMnuShowDocs = "PaperSave - 显示文档";

警告“Startup_PM_Transaction_Entry Called”;

l_result = Trigger_RegisterFocus(anonymous('Delete Button' of window PM_Transaction_Entry of form PM_Transaction_Entry), TRIGGER_FOCUS_CHANGE, TRIGGER_BEFORE_ORIGINAL, script PPSTrigger_PM_Transaction_Entry_Delete);

如果 l_result <> SY_NOERR 那么

万一;

任何人都可以知道我如何使用它吗?

0 投票
0 回答
603 浏览

plone - 在编辑表单上也为字段提供默认值

所以我有一个表格(只是从plone.directives.form获取示例):

仅适用于添加表单。

所以问题是:我怎样才能使同样的方法也用于编辑表单?如果与此事相关,我不会自己生成编辑表单。

编辑:我忘记了一些非常相关的东西:在字段中输入的值存储在其他地方,并且由于事件处理程序已经可以工作,所以这就是为什么我需要能够始终提供默认值(从存储的地方)并允许用户(系统管理员)更改该值,但主要是查找它(即该字段具有什么值)。

这里的用例是让系统管理员查看成员的电子邮件字段。电子邮件保存在 portal_membership 中,但我们增强了常规成员编辑配置文件,只允许系统管理员查看他们的电子邮件并能够更改它。

0 投票
2 回答
491 浏览

plone - 是否有用于灵巧的多个上传参考小部件(用于灵巧内容类型的快速上传小部件)

我正在研究一种应该能够支持多次上传图像的灵巧内容类型。我想要的是能够使用类似于collective.plonefinderreferencewidgets之一的东西。

我查看了记录的示例,collective.plonefinder但它们的小​​部件似乎只与原型兼容。

我还查看了collective.quickupload(它提供了上传能力collective.plonefinder),虽然我可以创建一个将敏捷内容类型标记为的行为,但IQuickUploadCapable我无法将快速上传小部件添加到敏捷内容类型。

0 投票
1 回答
1533 浏览

python - 如何使用灵活性以编程方式创建内容项/容器?

我已经阅读了专门关于在灵巧下操纵物体的手册。http://plone.org/products/dexterity/documentation/manual/developer-manual/reference/manipulating-content-objects/

我想要做的是以编程方式将内容(项目/容器)添加到当前正在创建的容器中。更具体地说,我正在创建一个容器/文件夹,一旦创建了这个容器,它将自动在父文件夹(手动新创建的那个)下创建项目/文件夹。

我尝试使用类似的代码 createContentInContainer(folder, 'content_type_name', title=u"title_here"),但我的实例出现错误,提示“文件夹”未定义。我想问一下这个片段如何插入到内容类型中?它是在类构造函数中定义的函数/方法中,还是最初应该如何声明/定义“文件夹”?

谢谢。

0 投票
1 回答
388 浏览

testing - 测试期间敏捷类型上的 ComponentLookupError

我有一个具有多种 Dexterity 类型的自定义产品,其中一些被 setuphandler 用于创建站点结构。这在测试之外没有任何问题,但在测试中它一直失败:

我确保在安装过程中导入包的配置文件:

虽然它们在包的设置中被列为安装要求,但我也尝试了明确applyProfile的 onplone.app.dexterityquickInstallProduct,但由于某种原因,Dexterity FTI 在调用时似乎没有注册。

我正在使用 Plone 4.1、Dexterity 1.1 和 plone.app.testing 4.2