[英]Meteor MongoDB Collection Not Accessible to Meteor publish
我已將數據導入流星mongodb數據庫。 這是我所做的:通過運行流星應用程序
$ yourMeteorAppDir流星
在一個終端和另一個終端中,通過啟動mongodb運行
$ mongod
啟動另一個終端,然后運行以下命令,使用以下命令將數據導入流星應用程序的數據庫:
$ mongoimport -h本地主機:3001 -d流星-c collectionNameHere <jsonFileNameHere.json
但是,從json文件導入文檔后,我發現我的Meteor應用程序未訪問該集合。 具體來說,當我嘗試通過以下方式發布收藏集時:
Meteor.publish('collectionNameHere', function()
{return collectionNameHere.find();
});
我看到了:
子ci9tk9AsFeyngHWwE ReferenceError的異常:collectionNameHere not defined I20141203-07:15:18.436(-5)? 在null._handler(app / server / collectionName.js:9:14)I20141203-07:15:18.436(-5)? 在mayAuditArgumentChecks(packages / ddp / livedata_server.js:1599)I20141203-07:15:18.436(-5)? 在_.extend._runHandler(packages / ddp / livedata_server.js:943)I20141203-07:15:18.437(-5)? 在_.extend._startSubscription(packages / ddp / livedata_server.js:769)I20141203-07:15:18.437(-5)? 在_.extend.protocol_handlers.sub(packages / ddp / livedata_server.js:582)I20141203-07:15:18.437(-5)? 在package / ddp / livedata_server.js:546
我可以通過流星mongo在mongo中查看該集合,並可以通過find查詢它。 我需要從應用程序而不是通過導入創建MongoDB集合嗎?
在您的項目根目錄中創建一個新的database_dump.json
。
然后打開終端,將目錄更改為項目的根目錄。 例如cd /var/www/html/meteor/myapp/
。
mongoimport --db meteor --collection mynewcollection --type json --headerline --file '/var/www/html/meteor/myapp/database_dump.json' -h 127.0.0.1:3001 --jsonArray
新的Mongodb集合
// Lib MyNewCollection = new Meteor.Collection('mynewcollection');
發布您的新收藏集。
// Server Meteor.publish("mynewcollection", function() { return MyNewCollection.find({}); });
訂閱它
// Client Meteor.subscribe("MyNewCollection");
與流星玩得開心
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.