使用标签加速信息检索 | Mendix

跳到主要内容

使用标签加速信息检索

我们的社区不断向 App Store 添加炫酷的新小工具。如果您不确定有哪些小工具,请查看我们之前的评论 UI 构建块、反馈小部件以及其他最受欢迎和每月评论。

本周,我将重点介绍 标签选择器,一个非常有用的小工具,刚刚于 25 月 XNUMX 日更新th。该小部件使用 Tag-it 库将内联对象创建器和标记引用选择器结合起来。最终您将获得一个有用的工具,可让您快速标记实体以供以后参考。我将介绍如何获取小部件、如何在模型中配置它以及一些有用的用例,以帮助您更快地进行标记。

为什么要使用标签选择器?

用户经常希望查阅他们之前输入或检索的信息。但是,当应用程序涉及需要各种组合过滤器才能产生结果的大型数据集时,这可能具有挑战性。考虑到这一点,能够预先标记实体会很有帮助,这样您就可以快速找到信息。

设置小部件

使用任何小部件的第一步都是从 App Store 下载它。从 Modeler 内置的 App Store 中,搜索标签选择器并选择“下载”以自动将小部件导入到您的项目中。

Tag1
1. 从 App Store 下载模块

配置领域模型

让我们使用以下简单的域模型来配置我们的标签。我有一个名为 TheData 的实体,它有一些属性。示例应用程序由一个每天输入大量“TheData”记录的团队使用。他们经常需要参考现有数据。

Tag2
2. 应用程序中的主要数据捕获实体

我们的应用程序包含几个页面,可用于筛选、创建和编辑记录。我们有一个概览页面和一个 NewEdit 页面,可用于编辑对象详细信息。

Tag3
3. 没有标签的数据概览页
Tag4
4. 数据的新编辑页面

现在我们有了基本模型,是时候集成标记了。在更新页面之前,我们需要创建代表标签的实体。这将添加到我们的域模型中,并与我们要标记的任何对象相关联。请注意此处关联的方向。在下面更新的域模型中,Tag 实体将包含 Caption 属性中的标签。我建议您存储标签的所有者和创建日期。

Tag5
5. Tag实体包含用户创建的标签

更新 UI

建立域模型后,我们必须向用户展示一个用于创建和查看标签的 UI。Label Selector 包可以拖放到任何页面上,以帮助创建正确的界面。我们将把它添加到 Data_NewEdit 页面,并将其配置为使用 Tag 实体作为标签。

Tag6
6. 将标签选择器添加到页面
Tag7
7. 配置标签选择器以使用标签的标签实体。

在此配置窗口中,您可以使用许多属性。您可以配置用户是创建新标签还是仅使用现有选项。您还可以在创建标签后触发微流。有关属性的完整列表以及如何使用它们,请查看 README 开始.

为了让用户能够搜索标记的项目,您可以向 Data_Overview 页面添加过滤器,如图所示。这样用户就可以快速找到他们标记的任何内容。

Tag8
8. 在概览页面添加过滤器,以便快速定位数据!

使用标签集扩展您的应用程序

用户通常通过一系列过滤器找到一组记录,然后使用标签选择器将该集合设为“集合”。用户只需对创建的标签进行过滤,而不必重新创建导致该集合的完整过滤器集。为了实现这一点,我们需要提供一个微流,让用户可以一次标记整个实体组。以下是该问题的一个解决方案:

1)创建一个名为TagHelper的实体,该实体与数据有引用集关联,并与Tag实体有关联。

Tag9
9. 创建 tagHelper 实体来协助群组标记

2)创建一个微流,接收数据列表并将该列表与新的 TagHelper 对象关联。

Tag10
10. 将列表与 tagHelper 对象关联

3) 将这个新的 TagHelper 对象传递给包含标签选择器小部件的页面。小部件应使用关联 TagHelper_Tag 来设置标签

Tag11
11. 使用 tagHelper_Tag 关联选择 tagHelper 的标签

4)最后在页面上创建一个微流,用于获取Data对象集合,获取标签,然后设置Data和Tags之间的关联。

Tag12
12. 设置批量选择的标签

在 Data_Overview 页面上执行一个操作,调用步骤 1 中的微流。您可以选择通过多选传递用户的选择,或者简单地传递整个列表内容。

Tag13
13. 将数据网格内容传递到新的微流以分组标签

一旦完成,列表中的每个项目都会具有相同的标签!

标签 家务管理

现在您的应用程序已设置为使用标签选择器,您可能需要考虑一些日常事务。我建议创建一个标签管理页面,管理员可以在其中创建、删除或更新错误创建的标签。如果您不允许用户创建自己的标签,而是强迫他们从列表中选择,那么这是必要的。

在 GitHub 上查找

与我们许多新的 App Store 内容一样,标签选择器小部件具有 GitHub存储库。我们活跃的开源社区一直在努力增强现有小部件并共同创造出色的新内容。请关注此小部件的未来发展,因为其他功能即将推出。如果您充满主动性,请下载存储库并自行添加新功能!

Tag14
14. 标签选择器正在运行!

快乐建模!

 

 

选择你的语言