【发布时间】:2014-10-12 04:20:18
【问题描述】:
如何将 app.js 中设置的 MongooseSchema 对象暴露给路由?
我在尝试使用 routes/index.js 的 app.js 中设置的变量时收到此错误。我使用 node 才几个月,所以我不确定我在这里缺少什么。
请注意我使用的是 Express v3.3.4
500 ReferenceError: ProfileSchema is not defined
在我的 app.js 文件中,我有:
var express = require('express')
, util = require('util')
, Promise = require('bluebird')
, crypto = require('crypto')
, routes = require('./routes')
, http = require('http')
, path = require('path');
var ProfileSchema = require('./models/schemas').ProfileSchema;
/*** ..... ***/
app.get('/user/home', routes.user_home);
在我的 /routes/index.js 我有:
exports.user_home = function(req, res){
//foo
}
我想在 user_home 路由中执行此操作:
ProfileSchema.find({ users: 'joeblow' }, function (err, docs) {});
但是会抛出 ReferenceError,因为 ProfileSchema 无法访问路由。
注意:我可以很好地使用 app.js 中的 ProfileSchema.find()。
【问题讨论】:
标签: node.js express routes mongoose