静态视图实体

xiaoxiao2021-02-28  94

一个视图实体由多个关联在一起的实体通过键值映射以及成员实体的别名字段使用可 选的功能关联在一起。视图实体同样可以有关联的条件去封装一些视图中的数据约束。 例子组件的 ExampleViewEntities.xml 文件中有一个视图实体 XML 定义的片段: <view-entity entity-name="ExampleFeatureApplAndEnum"          package-name="moqui.example">     <member-entity entity-alias="EXFTAP"  entity-name="ExampleFeatureAppl"/>     <member-entity entity-alias="ENUM"  entity-name="moqui.basic.Enumeration"              join-from-alias="EXFTAP">         <key-map field-name="exampleFeatureApplEnumId"/> </member-entity> <alias-all entity-alias="EXFTAP"/> <alias-all entity-alias="ENUM"/> </view-entity>    就像实体一样,视图实体使用 view-entity 元素上的 entity-name 和 package-name 属性 定义了名称和所在的包名。  每个成员实体通过member-entity 元素进行表示并且在entity-alias属性中使用别名唯一 定义它们。这么做的部分原因是在一个视图实体中同一个实体可能会使用不同的别名出现多 次。 注意第二个 member-entity 元素还有个 join-from-alias 属性去指定其关联于第一个成员 实体。只有第一个成员实体没有 join-from-alias 属性。如果你想要当前实体在关联(SQL 中 的左外连接)中是可选的,那么只要设置 join-optional 属性为 true。 使用 member-entity 元素下的一个或者多个 key-map 元素来描述两个实体之间是如何进行互相关联的。key-map 元素有两个属性:field-name 和 related-field-name。注意当当前成 员实体的主键字段匹配时,related-field-name 属性是可选的。 使用 alias-all 元素可以对所有的字段进行别名标识,就像上面的例子一样,或者使用 alias 元素去单独的设置别名。如果你想在一个字段上使用函数那么就使用 alias 元素单独去设置 别名。注意在 SQL 数据库中,如果任何别名的字段有一个函数同时其他所有的字段没有函数 但是在查询中被选中了,那么将会被添加到 group by 子句中以免出现无效 SQL。
转载请注明原文地址: https://www.6miu.com/read-43767.html

最新回复(0)