在各种文件中使用Think Orm,而无需重新连接到数据库



我有很多thinky模型,我必须在每个文件中创建一个对象以进行thinky及其连接,因为我有很多模型。

var dbconfig = require('../config/config.js')['rethinkdb'];
var thinky = require('thinky')(dbconfig);
var User = require('./user.js');
var type = thinky.type;
var r = thinky.r;
var Feedback = thinky.createModel("Feedback", {
    id: type.string(),
    feel: type.number().required(), // 0 = sad, 1 = happy
    reason: type.string(),
    description: type.string(),
    createdAt: type.date().default(r.now()),
    createdBy: type.string().required()
});
Feedback.ensureIndex("id");
module.exports = Feedback;

我如何做到这一点,以便我不必继续实例化变量,因此每次都会创建新的连接,并且仍然能够在自己的单独文件中制作所有这些数据模型?

您用来创建和导出思想模型的体系结构可能不正确。

请参阅本指南以获取完整的建议架构。https://thinky.io/documentation/architecture/

我得到了你,这是您长期以来一直在寻找的答案:

// file: util/thinky.js
var thinky = require('thinky')({
    // thinky's options
})
module.exports = thinky;

然后像这样包含它:

// file: models/user.js
var thinky = require(__dirname+'/util/thinky.js');
var type = thinky.type;
var User = thinky.createModel("User", {
    id: type.string(),
    name: type.string(),
    age: type.number()
});
module.exports = User;

真诚的镜子里的男人(我Gotchu兄弟)

最新更新