2016-04-03 9 views
2

В моем MongoDB у меня есть коллекция, которую я создал и заполнил со стороны сервера, называется «fs.files» (это коллекция gridFS).Доступ к существующей коллекции MongoDB из приложения meteor

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

Я попытался

PDFs = new Mongo.Collection("fs.files"); 

PDFs = new FS.Collection("fs.files", { 
    stores: [new FS.Store.FileSystem("fsfiles", {path: "./reports"})] 
}); 

Оба они будут возвращать пустой массив, когда я PDFs.find(). Выборки()

Проблема заключается в том, я не хочу, чтобы создать новую коллекцию , Я просто хочу иметь доступ к существующему, поскольку я не создаю эту базу данных с клиентской стороны.

+0

вы уверены, что ваша коллекция gridFS является кп ту же базу данных? дефолт по умолчанию db является «метеор», gridFS может хранить данные в своем собственном db. проверьте с помощью клиента mongo с «mongo localhost: 3001/meteor» и посмотрите, есть ли у вас другая коллекция. – MrE

ответ

2

Ваш подход должен работать. Вероятно, вы забываете опубликовать эту коллекцию на сервере и подписаться к ней на клиенте.

сервер:

Meteor.publish('myPDFs',function(){ 
    return PDFs.find(); 
}); 

клиент:

Meteor.subscribe('myPDFs'); 

 Смежные вопросы

  • Нет связанных вопросов^_^