2016-04-03 7 views
2

In meiner MongoDB habe ich eine Sammlung, die ich erstellt und von der Server-Seite, namens "fs.files" (es ist eine gridFS-Sammlung).Greifen Sie auf vorhandene MongoDB-Sammlung von Meteor App

In meiner Meteor App gibt es eine Möglichkeit, eine globale Variable zu deklarieren, die einfach Informationen aus dieser Datenbank holen kann?

Ich versuchte

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

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

Beide würden ein leeres Array zurück, wenn ich PDFs.find tun(). Fetch()

Das Problem ist, ich will nicht eine neue Sammlung erstellen . Ich möchte einfach Zugriff auf eine bestehende haben, da ich diese Datenbank nicht von der Client-Seite erstellen.

+0

sind Sie sicher, dass Ihre gridFS Sammlung ist die gleiche Datenbank kn? Die Meteor-Standard-DB ist "Meteor", gridFS kann Daten in seiner eigenen Datenbank speichern. Überprüfe den mongo-Client mit 'mongo localhost: 3001/meteor' und sieh nach, ob du eine andere Sammlung hast. – MrE

Antwort

2

Ihr Ansatz sollte funktionieren. Sie wahrscheinlich veröffentlichen diese Sammlung auf dem Server und abonnieren dazu auf dem Client.

Server:

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

Client:

Meteor.subscribe('myPDFs'); 
Verwandte Themen