我已经使用mlab在heroku上托管了我的MEAN应用程序,以提供我需要的mongodb数据库。mLARAB数据库无法从heroku托管的MEAN应用程序
在我的应用程序,我使用连接到数据库:
mongoose.connect(process.env.MONGODB_URI);
在我的应用程序,我宣布我的模型:
mongoose.model('Course', CourseSchema);
如果我理解正确的话,猫鼬将寻找一个命名集合培训班。
我一直在使用进口收集到MLAB:
它的工作,消息:imported 350 documents
然而,我的应用程序不显示任何数据,同时它的工作原理在本地。
可能会发生什么?我是一个总的初学者,真的不知道从哪里开始:)
编辑:
在我的应用程序,我已经由路由触发的数据库上的GET请求:/courses
这里是我获取日志中的有关该GET请求:
2016-06-09T17:33:57.000199+00:00 app[web.1]: GET /courses 304 2.473 ms - -
2016-06-09T17:34:34.739488+00:00 heroku[router]: at=info method=GET path="/" host=c
mtproto.herokuapp.com request_id=dbdef76d-78b2-4d4c-b509-a18c6194cc18 fwd="87.91.22
.213" dyno=web.1 connect=0ms service=2ms status=304 bytes=147
2016-06-09T17:34:34.734195+00:00 app[web.1]: GET/304 1.106 ms - -
我真的很困惑,我只是想我的应用程序在本地与本地数据库(在本地主机上)没有任何问题。
然后我在本地使用我的mongolab uri连接到由mlab管理的数据库。连接工作(响应:200),但我的应用程序没有数据。然后我开始使用curl http://localhost:3000/courses
并得到一个空数组作为响应。
我不认为问题来自我的获取请求的代码,因为它连接到我的本地主机数据库时工作。我的GET请求的代码:
router.get('/courses', function(req, res, next) {
Course.find(function(err, courses){
if(err){ return next(err); }
res.json(courses);
}).select({ "name": 1, "_id": 1, 'code': 1, 'courseContentGrade': 1, 'courseTeachingGrade': 1, 'courseAverage': 1});
});
它也像我成功地连接到数据库MLAB,因为我得到一个200码response.I得到304如果我使用POST请求,但。
这里是在数据库中的数据是这样的:
[{
"_id": {
"$oid": "5759ddbfe71976730e6df425"
},
"code": "XXXXXX ",
"name": "Negotiation",
"courseContentGrade": "3.0",
"courseTeachingGrade": "8.0",
"courseAverage": "5.5",
"reviews": [
{
"name": "Advanced Negotiation Workshop",
"professor": "Aenean sed",
"contentReview": "Lorem ipsum dolor sit amet, consectetur adipiscing",
"teachingReview": "In in ipsum odio. Nulla sodales nulla vel vulputate lobortis. Curabitur ut.",
"contentGrade": 3,
"teachingGrade": 8,
"average": "5,5",
"trimester": "T3",
"day": "Semaine bloquée",
"time": "Semaine bloquée",
"round": "1er tour/1st round",
"bet": 21,
"year": "2014/2015",
"upvotes": 0,
"author": "Piranha"
}
]
},
{
"_id": {
"$oid": "5759ddbfe71976730e6df42a"
},
"code": "XXXXXXXX",
"name": "Germany",
"courseContentGrade": null,
"courseTeachingGrade": null,
"courseAverage": null,
"reviews": []
}]
什么我应该检查任何其他提示吗?
你在Heroku中设置了你的进程环境变量吗? –