как я могу вызвать syncIndexes () на схеме в мангусте - PullRequest
0 голосов
/ 26 февраля 2020

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

, где и как могу ли я безопасно использовать syncIndex (), чтобы убедиться, что моя схема совпадает с тем, что обрабатывает mon go.

, когда я пытаюсь запустить функцию при импорте моей модели mon goose в маршруты Я получаю сообщение об ошибке

// Schema import
const postModel = require('../models/postModel');
const userModel = require('../models/userModel');

postModel.syncIndexes()


(node:6112) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'createCollection' of undefined

, поэтому, где я могу вызвать этот метод и быть уверенным в этом, если я sh буду использовать TTL для удаления моих документов один раз каждые 14 дней

.. У меня в схеме сообщений есть postSchema.index({createdAt: 1},{expireAfterSeconds: 60*60*24*14});

, но при тестировании старые остаются в индексе et c. Спасибо.

Редактировать: Мое текущее решение состоит в том, чтобы удалить всю коллекцию при тестировании новой, я думаю, что этот крайний случай не является проблемой, если вы не используете TTL, тогда вы должны настроить его правильно, так как я не вижу как бы это исправить с 1 миллионом постов в коллекции xd

...