PouchDb - найти () данные, даже если типы полей пропущены - PullRequest
0 голосов
/ 26 марта 2020

Я сейчас изучаю запрос pouchDb. И хотите получить данные, даже если fieldtype там нет. я хочу найти данные hide: true и hide: fieldtype имеет значение null .

До

db.find({
       selector: {
          _id: {
              $gt: 'Tenant_ClPost_',
              $lt: 'Tenant_ClPost_\ufff0'
            }, 
          }
        },
       fields: ['_id', 'hide', 'city']
      }).then(function (response) {
        common.displayJSON(response);
      }).catch(function (err) {
        common.displayMessage(err);
      });

Сначала Результаты

{
  "docs": [
    {
      "_id": "Tenant_ClPost_001",
      "hide": "true",
      "city": "losangeles"
    },
    {
      "_id": "Tenant_ClPost_002",
      "hide": "false",
      "city": "losangeles"
    },
    {
      "_id": "Tenant_ClPost_003",
      "city": "losangeles"
    }
  ]
}

//////////////////////////////////// ////////////////////////////////////////////////

После я добавил этот фильтр

selector: {
            _id: {
              $gt: 'Tenant_ClPost_',
              $lt: 'Tenant_ClPost_\ufff0'
            }, 
            $or: [
              {
                hide: 'true'
              },
              {
                hide: null
              }
            ],
}

Это результат, который я хочу

{
  "docs": [
    {
      "_id": "Tenant_ClPost_001",
      "hide": "true",
      "city": "losangeles"
    },
    {
      "_id": "Tenant_ClPost_003",
      "city": "losangeles"
    }
  ]
}

1 Ответ

0 голосов
/ 26 марта 2020

Я решил это, хе-хе, мой плохой

selector: {
            _id: {
              $gt: 'Tenant_ClPost_',
              $lt: 'Tenant_ClPost_\ufff0'
            }, 
            hide: {$ne: 'false'},
          },
...