【问题标题】:Updating a form generated by a wizard based on a class更新由基于类的向导生成的表单
【发布时间】:2016-01-12 20:44:17
【问题描述】:

我正在关注tutorial here。我创建了我的数据类并使用向导添加了一个名称属性。然后我使用向导创建了一个禅宗表单,在此期间我选择了上面创建的数据类。一切都很好。但是,我返回并在我的数据类中添加了一个附加属性longName。现在,由于生成的代码超过 300 行,我假设有一些方法可以根据更新的类重新生成它,但我不知道如何。

我最终从XData Contents 部分复制了下面的行并修改了值。它似乎运作良好,但我的问题仍然存在,有没有办法根据更新的类重新生成表单?

<text id="Name"  label="Name *" title="Enter a value" size="50" dataBinding="Name" height="23" />

【问题讨论】:

    标签: intersystems-cache intersystems objectscript intersystems-cache-studio intersystems-cache-zen


    【解决方案1】:

    你能指出教程的确切部分吗?是Zen Form Wizard吗?如果是这样,只需重新生成表单类(您无需事先将其删除)。

    UPD。当您使用 Zen Form Wizard 时,您可以通过以下方式以编程方式调用它:

    do ##class(%ZEN.Template.ZENFormWizard).CreatePage(dataClassName, appName, pkgName, newClassName, formName, cssNames, clsComment)

    【讨论】:

    • 是的,这就是我的意思,抱歉。如果我没有修改任何样式或布局或任何东西,删除和重新生成就可以了。如果我有呢?
    • 哦,这很有趣,所以我可以以某种方式传递一个 CSS 文件来设置页面样式,即使它基本上是动态渲染的?
    • @DevilsAdvocate 我猜你可以分开类。有一个生成的表单类,另一个类扩展这个生成的表单,它只包含您的修改。这样您就可以安全地重新生成基本表单而不会丢失您的更改。
    • @DevilsAdvocate cssNames 设置 ZEN 页面的 CSSINCLUDES 参数
    • 太糟糕了 Studio 没有内置的东西来更新生成的表单,但这是一个很酷的选择。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2011-11-08
    • 2019-04-10
    • 2015-11-01
    • 1970-01-01
    • 2019-12-24
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    相关资源
    最近更新 更多