Импорт "обычных" коллекций MongoDB в DerbyJS 0.6

Та же ситуация, что и в этом вопросе, но с текущей версией DerbyJS (версия 0.6):
Использование импортированных документов из MongoDB в DerbyJS

У меня есть коллекция MongoDB с данными, которые не были сохранены через мое приложение Derby. Я хочу сделать запрос против этого и вставить его в мое приложение Derby.

Это все еще возможно?

Принятый ответ там ссылается на неработающую ссылку. Самая новая рабочая ссылка будет выглядеть следующим образом: https://github.com/derbyjs/racer/blob/0.3/lib/descriptor/query/README.md

Что относится к ветке 0.3 для Racer (текущая мастер-версия 0.6).


Что я пробовал

  • Поиск в интернете
  • Наивный путь:

    var query = model.query('projects-legacy', { public: true });
    model.fetch(query, function() {
      query.ref('_page.projects');
    })
    

    (не работает)

1 ответ

Для этого была написана утилита: https://github.com/share/igor

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

В liveb каждая коллекция имеет соответствующую коллекцию операций, например profiles будет иметь profiles_ops Коллекция, которая содержит все операции для профилей.

Вам придется конвертировать коллекцию, чтобы использовать ее с Racer / aliveb из-за метаданных в самом документе.

Альтернативой, если вы не хотите конвертировать, является использование традиционного AJAX/REST для получения данных из вашей базы данных mongo, а затем просто добавление их в вашу локальную модель. Это не будет происходить в режиме реального времени или синхронизироваться с сервером, но позволит вам извлекать ваши шаблоны из данных, которые вы не хотите конвертировать по какой-либо причине.

Другие вопросы по тегам