mongoose关于模糊搜索的写法,有不指定字段的写法吗?

发布于 2022-09-13 01:11:54 字数 696 浏览 37 评论 0

有这个问题是因为有一个需求,要将这个搜索接口写成通用的,网上的一些教程都是这样的:

const keyword = this.params.keyword //从URL中传来的 keyword参数
const reg = new RegExp(keyword, 'i') //不区分大小写
const result = yield User.find(
    {
        $or : [ //多条件,数组
            {nick : {$regex : reg}},
            {email : {$regex : reg}}
        ]
    },
    {
        password : 0
    },
    {
        sort : { _id : -1 },
        limit : 100
    }
)

虽然内容是模糊的,但是需要指定字段,但是多个模型都用这个接口的话,不可能每一个模型都一样是吧。

$or : [ //多条件,数组
            {nick : {$regex : reg}},
            {email : {$regex : reg}}
        ]

我该怎么把这部分的指定字段变成匹配所有字段呢,注意是每个模型的所有字段,因为所有的列表页都要用这个接口。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

女中豪杰 2022-09-20 01:11:55

通过中间件根据参数指定字段实现了,别问为什么不用$text

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文