راکت

چگونه کوئری با چند فیلتر در mongoose انجام بدیم

2 پاسخ

من میخوام یک کوئری با دو تا فیلتر رو انجام بدم ، مشکل در فیلتر دومی که یک آبجکت هست رخ میده و آرایه خالی برمی گردونه
با این توضیح که با فیلتر اول به تنهایی دیتا میاد.

async reservedOnDay(original: number) {  
    const food = await this.foodModel.find({
      state: SuperFood.Confirm,
      reversed: { original }  // not found
    })
    return food;
  }
ثبت پرسش جدید

پاسخ‌ها

2
متین طیبی نیا
متین طیبی نیا
@MatinTayebi

تخصص: backend

سلام شما از دستور زیر استفاده کنید تا 2 فیلتر اجرا بشن


 let food = await foodModel.find({
            $and: [{state:SuperFood.Confirm},
                {reversed: { original }}]
        })
محمد حیدری
محمد حیدری
@pezhmanheidaryrostamy1373

تخصص: برنامه نویس فول استک جاوااسکریپت

سلام.
این نوع فیلتر آبجکت ها روش جالبی نیست .
دقیقا باید مشخص باشه کدوم فیلد از ابجکت برابر چه مقداری باشه.مثال

async reservedOnDay(original: number) {  
    const food = await this.foodModel.find({
      state: SuperFood.Confirm,
    "reserved.key": original.value
    })
    return food;
  }

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام