Список результатов на основе того, имеют ли они определенное свойство - PullRequest
0 голосов
/ 23 октября 2018

Вот два вида ответов, когда я перечисляю всех пользователей в моей базе данных.

{
_id: "5bcf4f4d48a3067897c22344",
__v: 0
},
{
_id: "5bcf507b65f77778ab23b53f",
firstname: "major",
lastname: "general",
__v: 0
}

Как видите, есть запись без имени и фамилии проп.На данный момент я пытаюсь очистить базу данных и удалить все те, которые не имеют свойства имени или фамилии.Вот что у меня есть.

async deleteUsersWithoutNames() {
    const usersWithNoName = await this.userModel.find()
        .where((response: any) => response.hasOwnProperty('firstname')).equals(false);
    return usersWithNoName;
  }

Это не работает и выражает крики о том, что path must be a string or object.

Это инициализация userModel.

  private userModel = new UserEntity().getModelForClass(UserEntity);

Класс UserEntity расширяется Typegoose на Typegoose .

Как мне продолжать это делать?

1 Ответ

0 голосов
/ 23 октября 2018

теперь, когда я думаю об этом, лучший способ решить ваш запрос

https://docs.mongodb.com/manual/reference/operator/query/exists/

async deleteUsersWithoutNames() {
    return await this.userModel.where({firstname: {$exists:false}})       
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...