问题标签 [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.
validation - 将不变量与 Dexterity 表单和字段集一起使用
我有一个从 plone.directives.form.Schema 派生的内容类型;它在四个字段集中有几十个字段。我正在尝试创建一个 zope.interface.invariant 来查看来自两个不同字段集的字段。
从跟踪行为来看,似乎每个字段集都调用了一次不变量,而不是整个表单。
我知道我可以提供自己的处理程序并在那里执行我需要的所有检查,但与明确定义的不变量相比,这感觉很笨重。虽然显而易见的解决方案是将相关字段移动到同一字段集,但当前设置反映了最终用户合乎逻辑的布局。
是否有一个现有的钩子,我可以在其中跨字段集对多个字段执行验证?
workflow - 具有工作副本(迭代)和工作流的敏捷内容类型
我正在尝试将正式的工作流程应用于我们定制的灵巧对象。Buildout 有 plone.app.versioningbehavior、collective.cmfeditionsdexteritycompat、collective.dexteritydiff plone.app.stagingbehavior、plone.app.referenceablebehavior。
我发现当我单击结帐时,它确实创建了对象的副本(copy_of_object),但对工作副本(对象)的引用被损坏了?此时如果我回到我的工作副本(对象),它会给出以下错误:
任何帮助都会很棒。这是我的完整引用
plone - z3c.forms 动态源提供程序返回空字典作为上下文对象
我正在使用 Plone 4.1.4 并且我正在尝试获取模式的动态源。选择工作,我需要填充国家列表,这又取决于上下文对象。
我正在使用这个例子: http: //plone.org/products/dexterity/documentation/manual/developer-manual/advanced/vocabularies
例如,对于 IContextSourceBinder,将返回一个空字典而不是实际的上下文对象:
当在 CountryGenerator.__call__() 方法中命中调试点并检查上下文对象时,后者结果只是一个空字典。
当我尝试在上面提到的文章中使用命名实用程序示例时,会发生类似的事情,上下文也有 {}。
谁能指出我可能做错了什么?
更新
调用表单的表单包装器的 ZCML 是
RegionClass 继承自 Form 包装器的地方,可能是权限问题还是遍历问题?
plone - ZMI 中 portal_types 工具中的别名选项卡
当我注意到 ZMI 中的 portal_types 工具中的别名选项卡时,我正试图调试与我的站点无关的问题。如果我尝试在使用灵巧的 Plone 4.1.5 站点中访问它,我没有得到任何响应。记录以下错误:
它适用于我照顾的一个单独的 Plone 3.3.6 站点。
Plone 4.1 是否仍支持此视图?
plone - 行为是否可以为其添加的字段指定自定义子表单
我正在尝试创建一种行为,该行为将 2 个新字段添加到应用它的内容类型,但我希望这些字段在添加/编辑表单上具有自定义子表单,用于添加到它的内容类型。作为行为的一部分,是否有任何直接的方法可以做到这一点?
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 那么
万一;
任何人都可以知道我如何使用它吗?
plone - 在编辑表单上也为字段提供默认值
所以我有一个表格(只是从plone.directives.form获取示例):
仅适用于添加表单。
所以问题是:我怎样才能使同样的方法也用于编辑表单?如果与此事相关,我不会自己生成编辑表单。
编辑:我忘记了一些非常相关的东西:在字段中输入的值存储在其他地方,并且由于事件处理程序已经可以工作,所以这就是为什么我需要能够始终提供默认值(从存储的地方)并允许用户(系统管理员)更改该值,但主要是查找它(即该字段具有什么值)。
这里的用例是让系统管理员查看成员的电子邮件字段。电子邮件保存在 portal_membership 中,但我们增强了常规成员编辑配置文件,只允许系统管理员查看他们的电子邮件并能够更改它。
plone - 是否有用于灵巧的多个上传参考小部件(用于灵巧内容类型的快速上传小部件)
我正在研究一种应该能够支持多次上传图像的灵巧内容类型。我想要的是能够使用类似于collective.plonefinder
referencewidgets之一的东西。
我查看了记录的示例,collective.plonefinder
但它们的小部件似乎只与原型兼容。
我还查看了collective.quickupload
(它提供了上传能力collective.plonefinder
),虽然我可以创建一个将敏捷内容类型标记为的行为,但IQuickUploadCapable
我无法将快速上传小部件添加到敏捷内容类型。
python - 如何使用灵活性以编程方式创建内容项/容器?
我已经阅读了专门关于在灵巧下操纵物体的手册。http://plone.org/products/dexterity/documentation/manual/developer-manual/reference/manipulating-content-objects/
我想要做的是以编程方式将内容(项目/容器)添加到当前正在创建的容器中。更具体地说,我正在创建一个容器/文件夹,一旦创建了这个容器,它将自动在父文件夹(手动新创建的那个)下创建项目/文件夹。
我尝试使用类似的代码 createContentInContainer(folder, 'content_type_name', title=u"title_here"),但我的实例出现错误,提示“文件夹”未定义。我想问一下这个片段如何插入到内容类型中?它是在类构造函数中定义的函数/方法中,还是最初应该如何声明/定义“文件夹”?
谢谢。
testing - 测试期间敏捷类型上的 ComponentLookupError
我有一个具有多种 Dexterity 类型的自定义产品,其中一些被 setuphandler 用于创建站点结构。这在测试之外没有任何问题,但在测试中它一直失败:
我确保在安装过程中导入包的配置文件:
虽然它们在包的设置中被列为安装要求,但我也尝试了明确applyProfile
的 onplone.app.dexterity
和quickInstallProduct
,但由于某种原因,Dexterity FTI 在调用时似乎没有注册。
我正在使用 Plone 4.1、Dexterity 1.1 和 plone.app.testing 4.2