首页 > 代码库 > XForms设计器-----模型实例

XForms设计器-----模型实例

在模型实例视图中进行模型管理。

clip_image0871_thumb1

模型实例的创建在“模型视图”的模型树中进行,具体参考“模型管理”中的“创建模型实例”。

可以在模型实例中手动创建实例数据节点、元素、节点文本等信息。

如果配置模型实例的介质类型为json,则模型实例视图如下(增加了对json的操作):

 

clip_image0881_thumb1

模型实例配置

clip_image0891_thumb

属性名称

描述

src

定义模型实例使用一个后台静态的XML文件数据作为模型实例的数据源

标识

模型实例ID,是运行时引用模型实例的唯一标识

介质类型

模型实例的数据源类型,目前支持xml、json两种类型

如果为模型实例配置了xml或json文件数据源,但是该文件不存在或没有同步到gforms应用,则会报如下错误:

clip_image0911_thumb

配置提示:

1)如果为模型实例配置了src属性,并且同时配置了数据节点,则src优先于数据节点,即所配置的数据节点在运行时失效。

2)src的文件路径必须相对于webContent目录的绝对路径,并且文件必须存在根目录元素且该根目录相当于模型实例的data根节点。

<transaction>

<date>2004-05-06</date>

<desc>Salery</desc>

<withdraw>false</withdraw>

<amount>5000.00</amount>

</transaction>

引用date的ref xpath表达式为:instance(‘test’)/date。

如果配置模型实例的类型为json,除了数据格式与XML不一样,在设计器使用及运行时均与XML一致,如则设计器会把json字符串使用XML树的方式展现出来,运行时也可以通过xpath访问json节点。

但是,json类型的模型实例,不可以为元素节点创建属性、不可配置名称空间,同时模型实例的虚拟根节点data名称修改后再次打开将仍然为data

如果为json类型的模型实例配置数据源文件,则数据源文件必须为json格式,且第一层必须是对象,样式如下

{

"options":[

{

"label":"PixUnit",

"value":"px"

},

{

"label":"percentUnit",

"value":"percent"

}

]

}

运行时的xml树状结构为(根节点data为辅助节点):

clip_image0931_thumb

 

配置节点

选择模型实例树中的任何一个树节点,就可以在“属性视图”中看到其配置,并可以修改其配置信息。

clip_image0941_thumb

 

查看XML

可以在模型实例树的实例节点、元素节点的右键菜单使用该功能,该功能将把所选的模型实例、元素的数据结构转换为XML字符串。

clip_image0961_thumb1

 

粘贴XML作为元素

可以在模型实例树任意元素节点的右键菜单使用该功能,该功能将把所粘贴的XML数据片段创建到元素节点下方。

clip_image0981_thumb1

粘贴后的模型实例结构:

clip_image1001_thumb1

配置提示:所粘贴的XML可以不存在根元素。

 

查看Json

该功能只有当配置模型实例的介质类型为json时可用。

可以在模型实例树的实例节点、元素节点的右键菜单使用该功能,该功能将把所选的模型实例、元素的数据结构转换为JSON字符串。

clip_image1021_thumb1

 

粘贴json作为元素

该功能只有当配置模型实例的介质类型为json时可用。

可以在模型实例树任意元素节点的右键菜单使用该功能,该功能将把所粘贴的JSON数据片段创建到元素节点下方。

clip_image1041_thumb1

粘贴后的模型实例结构:

clip_image1061_thumb1

配置提示:粘贴json为模型实例数据后,模型实例树将以xml方式查看json,如上图所示。

 

新增元素

在任意一个没有元素文本的元素的右键菜单中使用该功能为元素添加子元素。

 

新增属性

可以为任意一个元素增加属性。

 

删除

可以删除除模型实例节点、模型实例根节点外的任意一个元素、属性或文本节点。

 

创建UI

可以拓展任意模型实例数据节点到设计器,从而构建UI界面:

clip_image1071_thumb1

如把上图的“transaction”节点拖拽到设计器后,所构建的UI如下图所示:

clip_image1081_thumb1

各个控件的节点引用配置如下:

控件

节点引用ref

groupbox

instance(‘instance1‘)/transaction

date

date

desc

desc

withdraw

withdraw

amount

amount

可以看出,除外层的groupbox容器使用绝对路径引用模型实例节点外,其他几个控件均使用相对路径。

 

 

产品联系方式

www.ghpaas.com

电话: 13601178468

Email: ghpaas@163.com

产品资料:百度网盘http://yun.baidu.com/s/1bnznec3#dir/path=%2Fghorse