搜索

点击复制

根据字段在数据库中找到一个或几个模型对象,并返回它们。



提示:所有的搜索都是不区分大小写的,并搜索一个子串,对应于搜索值周围有"%"的SQL "ILIKE "语句(例如,如果你搜索 "first_name "中的 "Max",SQL查询会看起来像 "first_name" ILIKE "%Max%")。

提示:你可以在你的搜索中使用SQL通配符。例如,如果你搜索 "ma%m","Maxim "将被返回。如果你通过URL查询参数传递这些通配符,确保对它们进行编码(即"%"变成"%25",而"_"可以保持原样)。

提示:要通过URL查询参数传递一个数组,确保以下列格式编码:"arrayName[]=element1&arrayName[]=element2"(例如:"color[]=red&colors[]=blue")。

流程连接

  • [输入] In - 启动区块的执行。
  • [Output] Out - 当区块执行完毕时激活。

数据连接

  • [Input] _Offset (integer, optional) - 从数据库中的第一行开始搜索(索引从0开始)。
  • [Input] _Limit (integer, optional) - 要返回的模型对象的最大数量。
  • [Input] _SortOrder (string, optional) - 返回模型对象的排序(可以是升序排序的 "ASC "或降序排序的 "DESC")。
  • [Input] _SortBy (string, optional) - 返回的模型对象将被排序的字段。字段的名称应该以小写蛇形字母提供(例如,"first_name")。
  • [Input] _with (enum, optional) - 连接到目标模型对象的数据模型,以从数据库中检索。然后可以在扩展找到的模型对象后使用。阅读更多关于_with的信息,请参见业务流程常见问题。
  • [Input] _Search (string, optional) - 使用OR逻辑在多个字段中同时搜索的值(例如,"first_name"="Max "或 "last_name"="Max")。
  • [Input] _SearchIn (string array, optional) - 在_搜索数据输入中定义的要搜索的字段。字段的名称应以小写蛇形字母提供(例如:"first_name")。
  • [Input] Fields (multiple, any) - 要搜索的字段值。任何包含上述子串的对象都将被返回,搜索也是不分大小写的(例如,如果该值被设置为 "MAX",而一个对象在数据库中的值是 "Maxim",它将被返回)。搜索相当于SQL的 "ILIKE "语句,任何非空的输入都会使用AND逻辑进行组合(例如,"名字 "ILIKE"%Max%"和 "姓氏 "ILIKE"%Parker%")。
  • [Output] Data (model array) - 在数据库中发现的模型对象。
  • [Output] Count (integer) - 找到的模型对象的数量。

如果你要搜索的模型有一对多或多对多的关系,并且你已经使用_with数据输入选择了要返回的相关模型,你也将能够定义哪些相关对象将被返回(通过对它们应用_Sort, _Search, 和类似的方法)。请记住,你不会通过这些参数来过滤被搜索的模型,只是相关的模型(更多细节见上面的视频)。