因此,我正在用試圖實現MVC模式的貓鼬表達。我試圖基本打印出我的文件在小貓收集,但絕對不知道如何。我跟着無數的教程,並且一直在出錯。我所看到的大多數教程只是顯示他們將代碼放在一個不理想的單個文件中。我的路線確實有效,因爲我用我的觀點測試了它們(我沒有包含它們)。我在訪問/ indexoflistcontrollersget時遇到的錯誤是kitty上的referenceError(listControllers.js中的第10行)。顯然kitty沒有定義,但我確定它應該是因爲該文件需要homemodel.js因此它應該已經運行該代碼?無法查詢貓鼬上的模型
這些都是我的文件:
app.js
var express = require('express');
var http = require('http');
var path = require('path');
var handlebars = require('express-handlebars'), hbs;
var app = express();
var db = require('./db')
require('./router')(app);
app.set('port', 1337);
app.set('views', path.join(__dirname, 'views'));
/* express-handlebars - https://github.com/ericf/express-handlebars
A Handlebars view engine for Express. */
hbs = handlebars.create({
defaultLayout: 'main'
});
app.engine('handlebars', hbs.engine);
app.set('view engine', 'handlebars');
app.use(express.static(path.join(__dirname, 'static')));
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
// Connect to Mongo on start
db.connectDB();
db.js
var mongoose = require('mongoose');
exports.connectDB = function() {
mongoose.connect('mongodb://localhost:27017/test');
console.log("CONNECTED TO MONDO")
}
模型/ homemodel.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var kittySchema = new Schema({
name: String
});
mongoose.model('kitty', kittySchema);
控制器/ listControllers.js
var express = require('express');
var router = express.Router();
var modelList = require('../model/homemodel.js');
var mongoose = require('mongoose');
exports.IndexOfListControllerGET = function(request, response){
//This is another controllers
//GET METHOD
mongoose.model('kitty').find(function(err,kitty){
response.send(kitty);
});
}
請幫忙,現在已經困在這個很簡單的問題了。
EDIT =所以我修正了錯誤。傳遞了錯誤的參數。但只有[]打印出來。當我使用mongo終端訪問小貓集合時,我可以看到已經放入的條目。如何在頁面上顯示這些條目?
OP爲什麼要「試試這個」?一個好的答案***將總是解釋所做的事情以及爲什麼這樣做,不僅是爲了OP,還是爲了將來訪問SO。 –
對不起周杰倫,我編輯我的答案希望現在有幫助^^ – lefdilia