使用SailsJS中的Waterline ORM,autoCreatedAt
和autoUpdatedAt
的默认值设置为false,但我仍然需要使用不同的字段名称(DBA请求)实现功能。有没有办法:
created_ts
和updated_ts
这样的架构中保留自定义字段,以便在数据库架构本身中使用触发器进行更新(但我仍然需要Waterline来阅读它们)?提前致谢。
答案 0 :(得分:18)
我刚开了两个拉请求来实现这个功能;
您也可以关注this issue。
在你的模型中合并它,而不是例如:
autoCreatedAt: false,
autoUpdatedAt: false,
attributes: {
creationDate: {
columnName: 'created_ts',
type: 'datetime',
defaultsTo: function() {return new Date();}
},
updateDate: {
columnName: 'updated_ts',
type: 'datetime',
defaultsTo: function() {return new Date();}
}
},
beforeUpdate:function(values,next) {
values.updateDate = new Date();
next();
}
你可以这样做:
autoCreatedAt: 'created_ts',
autoUpdatedAt: 'updated_ts'