mongoose.model devuelve el Model se define. Configurándolo como module.exports le permite crear fácilmente instancias del Model , sin recuperarlo de la conexión.
a.js
var User = require('./b');
var myUser = new User;
b.js
var UserSchema = mongoose.Schema({
name: String
})
module.exports = mongoose.model('User', UserSchema);
... tenga en cuenta cómo puedo llamar directamente a new User (después de configurar User ser require('./b') ... esto es lo que module.exports me permite hacer. Tenga en cuenta que esto no es parte de mongoose per-se, pero de Sistema de módulos de nodos
.