gpt4 book ai didi

user-interface - 如何在Web窗体GUI中实现用户友好的 bool 逻辑?

转载 作者:行者123 更新时间:2023-12-03 08:38:49 25 4
gpt4 key购买 nike

当前,我有一个Web应用程序,用户可以在其中使用下拉列表生成SQL SELECT语句,如下所示:

列选择下拉列表|运算符下拉菜单(=!=> <<=> =)|值选择下拉菜单

用户可以多次执行此操作,并且“过滤器”当前全部与在一起。

我想添加创建OR语句的可能性。在列相同的情况下,我可以很容易地添加OR,但是像这样的复杂逻辑语句呢?

(((A或B或C)和(D或E))或(F和G)?

如何让用户以用户友好的方式创建此类语句?

编辑:要指定,对一般用户来说用户友好。目前,我与开发人员一起工作,这些开发人员偶尔为需要数据库中特定信息的非技术客户手动编写SQL查询代码。我们的目标是通过提供给客户一个易于使用的工具自行完成此Web应用程序,从而消除了我们手工编写代码的需要。

EDIT2:当前该应用程序尚未由最终用户使用。关于它的用途,我仅有的数据是以前的手写SQL查询,因此是客户要求的那种查询。鉴于我可以简化它(例如,将用户生成查询的能力限制为他们倾向于要求的那种查询),但是我想看看是否有人在GUI中简单,完全地交流 bool(boolean) 逻辑。

感谢您的时间。

最佳答案

当您需要处理( (A or B) and C) or (D or E or F)时,您正在使用类似树的数据结构。以我的经验,没有一种简单的方法可以以“漂亮”或“直观”的方式向用户表示决策树。在ASP.NET Web表单中,它的工作变得更加困难。

但是,下面是一个经过尝试的真实方法:接受where子句的单个文本框。相信我,单输入方法确实是最简单直观的用户界面,它还具有*允许快速输入/修改查询过滤器的优势*。

**从技术 Angular 来看,另一个优势是能够编写自己的词法分析器/解析器和AST。您多久在基本的Crud应用程序中执行此操作:)*

您已经在训练用户如何使用即席查询引擎,也可以训练他们输入(account.Balance < -2000 and account.Type == 'Checking') OR (account.Number = 123456)可以返回其返回的确切内容。

如果采用这种方法,请向用户提供可用列的下拉列表,以便双击某个项目将其插入到光标所在位置的文本框中。

关于user-interface - 如何在Web窗体GUI中实现用户友好的 bool 逻辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1703340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com