Google app maker 从单个搜索框在Google AppMaker中查询多个数据源

Google app maker 从单个搜索框在Google AppMaker中查询多个数据源,google-app-maker,Google App Maker,我试图从同一文本框中查询2个数据源,如何更新服务器端查询脚本 我已经修改了现有的谷歌AppMaker模板,用于供应商评级,并对其进行定制,以供我们内部使用 在应用程序中,我添加了一个新的数据源类别,该类别与联系人数据源具有多对多关系 ! 在Contacts页面的标题中,如果我正在查找SearchText与Contact数据源中的某个字段匹配的内容,则搜索栏会起作用 我成功地将Category下拉列表链接到新的查询参数SearchCategory ! ! 我不知道如何让SearchText也查询C

我试图从同一文本框中查询2个数据源,如何更新服务器端查询脚本

我已经修改了现有的谷歌AppMaker模板,用于供应商评级,并对其进行定制,以供我们内部使用

在应用程序中,我添加了一个新的数据源类别,该类别与联系人数据源具有多对多关系

!

在Contacts页面的标题中,如果我正在查找SearchText与Contact数据源中的某个字段匹配的内容,则搜索栏会起作用

我成功地将Category下拉列表链接到新的查询参数SearchCategory

!

!

我不知道如何让SearchText也查询Category数据源,看看它是否匹配现有类别,如果匹配,也返回那些联系人

我在下面包含了一份修改过的getContacts_uuu函数

函数getContacts(查询){ if(query.parameters.SearchCategory===null){ query.where='(FirstName包含?:SearchText或mobile包含?)+ “:SearchText或电子邮件包含?:SearchText或CompanyName包含?:SearchText或网站包含?:SearchText或LastName包含?:SearchText或OfficePhone包含?:SearchText)”; 返回query.run(); }否则{ var contacts=[];//空白数组 var newQuery=app.models.Contact.newQuery({sorting:query.valueOf().sorting}); newQuery.where='(FirstName包含?:SearchText或mobile包含?)+ “:SearchText或电子邮件包含?:SearchText或CompanyName包含?:SearchText或网站包含?:SearchText或LastName包含?:SearchText或OfficePhone包含?:SearchText)”; newQuery.parameters.SearchText=query.parameters.SearchText; newQuery.parameters.View=query.parameters.View; contacts=newQuery.run(); 如果(query.parameters.SearchCategory!==null){//严格执行,则返回TRUE-类别不为null var category=app.models.category.getRecord(query.parameters.SearchCategory); var categoryContacts=category.Contact.map(函数(c){ 返回c._key;}); 触点=触点。过滤器(功能(c){ 返回categoryContacts.indexOf(c.u键)>-1; }); } var contactsArray=[]; 对于(var k=0;k 我希望能够使用搜索栏返回搜索文本与类别名称匹配的联系人。即“零售”


非常感谢您的建议

如果在每个数据源中探索“查询生成器”选项,您会注意到,一旦引入查询参数,该参数就有一个绑定选项,您可以将该参数“反向绑定”到页面上的小部件。我所做的是在每个数据源中对我想要搜索的内容执行查询生成器,然后将参数本身绑定到我的SearchText textbox小部件。我已经尝试探索过了,我能够将我的:SearchText参数直接绑定到该页面上datasource-Contact和Category的小部件。搜索小部件确实可以搜索联系人数据源,但它似乎不会影响类别数据源。这是我的QueryBuilder的一个屏幕截图,用于分类数据源!在我看来,我应该尝试查询或过滤类别和联系人之间的关系。哪部分不起作用?它甚至加载了数据源吗?如果我在联系人中搜索“Retail”,因为没有包含该词的联系人,所以不会返回任何结果。