Я использую Mongoose 3, и наиболее очевидный способ подключения к базе данных —
conn = mongoose.createConnection(...)
conn.on("open",...)
Вопрос в том, нужно ли мне определять все мои модели в обратном вызове open? Если это так, мне придется создать initMongoose.coffee
, который выглядит как
# initMongoose.coffee
mongoose = require "mongoose"
module.exports = mongoose.createConnection...
# modelExample.coffee
conn = require "./initDatabase"
conn.on "open", ->
... define model?
modeule.exports = model # I think this does not work?
Кажется, я где-то читал в документах Node, что модули не могут быть определены в таком обратном вызове?
Поскольку я использую только одно соединение, я думаю, что могу использовать
mongoose.connect...
Который не принимает никаких обратных вызовов, поэтому я полагаю, что он синхронный? Могу ли я определить все свои модели и, следовательно, запросы сразу после connect()
? На данный момент это работает, но это может быть потому, что он достаточно быстрый.