CNode

mongoose中schema的setting

问答
Ccrab-alex发布于10 年前最后回复10 年前4 回复3684 浏览0 收藏

最近才开始使用mongoose,对api的理解还不深刻。遇到了一个问题,我开发的程序需要对数据做一次规范化然后存入数据库,比如:对价格进行四舍五入保留小数点后两位。我用到了schema里面的set属性: function round2(v) { if (v) { return Math.round(v*100,2)/100; } } let schema = new Schema({price :{ type: Number, set: round2 }}) 跑了一下效果,发现插入数据create的时候,round2被调用到了,但是更新数据update的时候就没有调用round2。想问一下大神是什么原因?

查看回复

回复 (4)

I
i5ting#1·10 年前

如何调用的update贴出来,你就应该知道了

C
crab-alex#2·10 年前
引用 i5ting如何调用的update贴出来,你就应该知道了

@i5ting 就是普通的调用,好像没什么特别的啊。求指导! model.update({ 'condition':condition }, data, { upsert: true }, function(err) { if (err) { console.log(err); } })

R
rianran1993#4·10 年前

我也遇到这个问题了,请问解决了吗?

来自酷炫的 CNodeMD

参与回复
登录后即可参与回复。登录