我使用npm orm,我已經可以創建新的數據庫條目。現在我想收到所有條目,但它不能按預期工作。我用.all
函數來接收條目,但它不起作用。使用npm orm接收數據庫的所有元素
應用
var express = require('express');
var path = require('path')
var app = express();
var bodyParser = require('body-parser');
var orm = require('orm');
var db = orm.connect('mysql://root:[email protected]/iDanGManagement', function(err, db) {
if (err) throw err;
});
module.exports = db;
var Person = db.define('person', {
id: { type: 'serial', key: true },
name: { type: 'text' },
email: { type: 'text' }
});
// views
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
// join public dir
app.use(express.static(path.join(__dirname, 'public')));
// parse stuff
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
// routes
app.get('/', function(req, res) {
Person.all(function(err, persons) {
if(err) return err;
console.log(persons, persons.name)
});
res.render('index');
});
app.post('/add', function(req, res) {
var new_person = {};
new_person.name = req.body.name;
new_person.email = req.body.email;
Person.create(new_person, function(err, results) {
if (err) throw err;
});
});
var server = app.listen(3000, function() {
var host = server.address().address;
var port = server.address().port;
console.log('Example app listening at http://%s:%s', host, port);
});
當我打印persons.name
,我只是收到不確定。人的輸出:
[ { id: [Getter/Setter],
name: [Getter/Setter],
email: [Getter/Setter] } ]
另外我沒有收到任何錯誤。你們知道爲什麼這不起作用嗎?
即返回一個數組,它看起來正確的我,有多少人,你有你的數據庫?嘗試'console.log(persons [0] .name)'。 – 2015-04-01 08:19:26
@RichardMacarthy這給了我一個想要的結果。但我怎樣才能得到每一個條目?出於測試目的,我剛剛得到3個條目 – ZedsWhatSheSaid 2015-04-01 08:22:10
您需要遍歷數組,我編輯了我的答案。 – 2015-04-01 08:25:37