gpt4 book ai didi

schema - 使用 Dexterity 时,我可以将模型驱动类型与模式驱动类型结合起来吗?

转载 作者:行者123 更新时间:2023-12-05 00:29:18 33 4
gpt4 key购买 nike

如何创建混合类型(即保持模型驱动类型的便利性但根据需要利用模式驱动类型的类型)?

我最近的探索使我将模型驱动的敏捷类型作为最方便的敏捷开发方法。我一直在关注这篇文章:http://developer.plone.org/reference_manuals/external/plone.app.dexterity/model-driven-types.html与此处记录的模式驱动类型相比:http://developer.plone.org/reference_manuals/external/plone.app.dexterity/schema-driven-types.html .

混合方法源于我在引用中遇到的一个问题,到目前为止,使用模型驱动类型的行为无法预测。我希望模式驱动的定义能够在这种情况下给我更细粒度的控制。

最佳答案

您可以基于模型创建架构:

from plone.supermodel import model

class IMySchema(model.Schema):
model.load('path/to/model.xml')

Python 模式中定义的任何字段都将优先于模型中定义的具有相同名称的字段。

模型在 ZCML 配置阶段结束时加载。这意味着有一个警告:
您不能在任何地方在模块范围内引用模型中的字段。例如,使用 @form.default_value(IMySchema['foo']) 装饰器注册默认值将不起作用,因为在导入时执行装饰器时该字段尚未加载。

关于schema - 使用 Dexterity 时,我可以将模型驱动类型与模式驱动类型结合起来吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17552516/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com