Dan*_*ano 19 javascript mysql orm node.js
我知道这是一个常见的问题,但我已经完成了测试,我需要一些特殊的功能!
我需要的功能是:
可选功能:
我测试过:
现在我要测试JugglingDB和Bookshelf.js(但我不喜欢最后一个).
tgr*_*ser 19
Bookshelf目前应该支持所有这些:
绝对支持每个文件一个模型...关系是在方法中定义的,所以你可以这样做:
var Classroom = Bookshelf.Model.extend({
tableName: 'classrooms',
student: function() {
// Relating to a model from a file in the same directory.
return this.hasMany(require('./student'));
}
});
new Classroom({id: 1})
.fetch({withRelated: ['students'])
.then(function(classroom) {
console.log(JSON.stringify(classroom));
});
Run Code Online (Sandbox Code Playgroud)正式的软删除支持正在开发中,但通过扩展模型并提供如下所示的新destroy方法,可以轻松实现:
destroy: function(options) {
if (options.softDelete) {
return this.save({'deleted_at': new Date});
}
return bookshelf.Model.prototype.destroy.call(this, arguments);
}
Run Code Online (Sandbox Code Playgroud)
它还没有挂钩到缓存,因为关系上的缓存失效是相当棘手的,绝对是正在考虑的事情.
如果您看到任何似乎缺失的东西,请随意打开机票.
| 归档时间: |
|
| 查看次数: |
10897 次 |
| 最近记录: |