批量编辑器

该扩展组件支持用户对多个实体实例的属性值进行统一编辑。

提供一个用于打开对话框的 操作,在这个对话框内,用户可以输入属性值。之后,操作会在数据存储和 UI 中更新这些编辑的实体。

安装

请按照 扩展组件 章节的介绍通过 Jmix 市场自动安装。

手动安装时,在 build.gradle 中添加依赖:

implementation 'io.jmix.bulkeditor:jmix-bulkeditor-starter'

用法

此扩展组件提供的操作为 bulked_edit。这是一个 列表组件操作,因此,可以将操作添加至 dataGrid 数据网格treeDataGrid 树形数据网格

示例:

<hbox id="buttonsPanel" classNames="buttons-panel">
    <!-- ... -->
    <button action="booksDataGrid.bulkEdit"/>
</hbox>
<dataGrid id="booksDataGrid" dataContainer="booksDc" columnReorderingAllowed="true"
            selectionMode="MULTI">
    <actions>
        <!-- ... -->
        <action id="bulkEdit" type="bulked_edit"/>
    </actions>

设置 dataGridselectionMode="MULTI" 以支持多选。

参数化

bulked_edit 操作提供了一些附加的属性可以在 XML 中配置,或者通过 Java setter 编程式配置。

在 XML 中,使用内部的 <properties> 元素配置属性。每个 <properties> 对应操作类中的一个 setter 方法:

<action id="bulkEditAction" type="bulked_edit">
    <properties>
        <property name="includeProperties" value="username, email"/>
    </properties>
</action>

属性

  • includeProperties - 配置需要显示在批量编辑器中的实体属性。如果设置,则其他没有列出的属性都不能编辑。

  • exclude - 定义一个正则表达式来显式地排除特定的属性,这些属性不能编辑。

  • useConfirmDialog - 控制是否在保存更改前显示一个确认对话框。默认值 true