2012-01-05 137 views
1

这是我的文件夹结构
- express_example
| ---- app.js
| ----车型
| -------- songs.js
| -------- albums.js
| ----和expressjs查询与猫鼬

song.js

var mongoose = require('mongoose') 
, Schema = mongoose.Schema 
, ObjectId = Schema.ObjectId; 

var SongSchema = new Schema({ 
name: {type: String, default: 'songname'} 
, link: {type: String, default: './data/train.mp3'} 
, date: {type: Date, default: Date.now()} 
, position: {type: Number, default: 0} 
, weekOnChart: {type: Number, default: 0} 
, listend: {type: Number, default: 0} 
}); 

mongoose.model('Song', SongSchema); 
module.exports = SongSchema; 


的另一个文件

var mongoose = require('mongoose') 
, Schema = mongoose.Schema 
, SongSchema = require('./songs') 
, ObjectId = Schema.ObjectId; 

var AlbumSchema = new Schema({ 
name: {type: String, default: 'songname'} 
, thumbnail: {type:String, default: './public/images/album/unghoangphuc/U1.jpg'} 
, date: {type: Date, default: Date.now()} 
, songs: [SongSchema] 
}); 

mongoose.model('Album', AlbumSchema); 


我怎么可以把代码查询册页相册ID文件album.js

回答

2

例如:

var mongoose = require('mongoose') 
    , Album = mongoose.model('Album'); 

app.get('/posts/:id', function(req, res, next) { 
    Album.findById(req.params.id, function(err, album) { 
    // album is available here 
    });  
}); 

看到http://mongoosejs.com/docs/finding-documents.html以了解关于查找文档。

PS:这是我第三次回答了你的问题:)

+0

:) 3倍我得到你的回答,这是对我很有用。 我可以把查询脚本放在文件'album.js'中,就像一个函数,当我需要在某些独立的地方调用它时,就可以使用这个函数 – 2012-01-05 19:09:43

+0

对于简单和内置的查询,这并不是必须的,而且它通常由控制器而不是模型。至于复杂的查询,您可以在模型中添加新的方法,请参阅http://mongoosejs.com/docs/methods-statics.html – qiao 2012-01-05 19:22:13

+0

行..非常感谢:D ...我很高兴您的帮助我。我会尽力帮助像你这样的人帮助我。 – 2012-01-05 19:26:04