如题,还是只能用mongodb native的方案? 关于mongodb native有没有啥好的学习资料? 谢谢~
12 回复
@shinka 问题不是很明确,最好详细点。 字段拼接看你是要做什么,如果你是想把firstname和lastname拼接在一起又不存入数据库,可以使用虚拟属性,字段运算没研究过,举个例子我学习一下吧
@shinka 你是指这个运算啊
1.如果你想做到查询中采用运算做判断条件,可以使用Model.$where(),里面传入一个mongodb的操作语句即可,但是这只是查询的条件,例如Model.$where('this.age > 18');
就是查询年龄超过18岁的。
2.如果你要做的是将查询出来的结果做运算,可以采用虚拟属性,例如数据库中存储的性别是1、2,取出来的时候可以设置虚拟属性getSex,让1变为男,2变为女,同样虚拟属性可以反向设置。
@shinka 1.虚拟属性是不存入数据库的,因此可以设置一个虚拟属性,从数据库获得一个真实属性,然后将其变为虚拟属性来显示。例如数据库存储sex为1和2,这对于数据库来说是真实属性,但是我们需要存取的是‘男’和’女’,我们可以设置虚拟属性或者get方法,让提取出来的数据按照我们的约定去显示。2.虚拟属性虽然不存入数据库,但也有方法能影响数据库,比如新增一条数据包含sex=‘男’,显然这是无法存入数据库的,可以设置set方法让’男’变成1即可。