Как я могу получить связанную компанию в mongodb? - PullRequest
0 голосов
/ 27 января 2020

Я использую mongodb базы данных и хочу применить $lookup к 2 collections, но с указанными c условиями. У меня есть одна коллекция с именем Company вот так

new Schema({
name: String,
benefit: String,
benefitDesc: String,
company_url: String,
logoUrl: String,
coverUrl: String,
desc: String,
 createdAt: String,
 categoryId: { type: Schema.Types.ObjectId, ref: 'categories' },
})

И еще одна collection с именем Referrallinks вот так

new Schema({
referral_link: String,
referral_code: String,
isLink: Number,
offer_name: String,
offer_desc: String,
user_email: String,
companyId: { type: Schema.Types.ObjectId, ref: 'companies' },
addedByAdmin: { type: Boolean, default: true },
number_of_clicks: Number,
referral_country: String,
link_status: String,
categoryId: { type: Schema.Types.ObjectId, ref: 'categories' },
number_of_clicks: { type: Number, default: 0 },
createdAt: String,
 updatedAt: String,
 userId: { type: Schema.Types.ObjectId, ref: 'users' }
})

Теперь, когда я применяю это $lookup, я тоже получение этих результатов

[
 {name : '', benefit : '', benefiDesc : '', categoryId : ObjectId("2342343"), category : {}, referrals : []},
 {name : '', benefit : '', benefiDesc : '', categoryId : ObjectId("2342343"), category : {}, referrals : []},
 {name : '', benefit : '', benefiDesc : '', categoryId : ObjectId("2342343"), category : {}, referrals : []},
  .....
]

Теперь я хочу сделать поиск. В этом поиске я хочу отправить categoryId со стороны клиента, и от имени этого categoryId я должен найти все компании, принадлежащие этой компании с рефералами. Так как же мне этого достичь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...