首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在拉拉中同时搜索两列字段?

如何在拉拉中同时搜索两列字段?
EN

Stack Overflow用户
提问于 2021-12-17 07:53:46
回答 2查看 325关注 0票数 0

我正在使用Apiato框架开发API,我正在执行一些搜索操作,我的首页中有一个名为cardDetails的列名,它包含卡片的first4 and last4数字,但是在我的数据库中,它包含两个列,名为first4last4

现在我的疑问是,如果用户使用这两个组合的值进行搜索,就意味着它应该从两个列中获取值,您能帮我实现这件事吗?

DetailsRepository.php

代码语言:javascript
复制
public $fieldSearchable=[
      'credentials.first4',   //credentials is a relationship which is used in Model
      'credentials.last4      //first4 and last4 are the columns in details table 
  ]
EN

回答 2

Stack Overflow用户

发布于 2022-06-15 06:19:54

下面可以使用Search作为示例,

代码语言:javascript
复制
api.domain.test/v1/endpoint?search=age:17;email:john@gmail.com

默认情况下,它是一个或操作,相当于

代码语言:javascript
复制
SELECT * FROM users WHERE age = 17 OR email = 'john@gmail.com';

参考文献:http://apiato.io/docs/core-features/query-parameters/#search-join

票数 1
EN

Stack Overflow用户

发布于 2021-12-17 08:06:17

我不太明白你的意思,但这两种方法中有一种是可行的。方法1:

代码语言:javascript
复制
->where('first4', $request->search_word)->orWhere('last4', $request->search_word)

方法2:

代码语言:javascript
复制
->when($request->search_word, function ($query) use($request) {
      $query->where('first4', $request->search_word);
  })
->when($request->search_word, function ($query) use($request) {
      $query->where('last4', $request->search_word);
  })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70389952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档