问题描述
拿注册接口来说。
之前写代码的时候是吧各种验证(为空,email格式验证等)放到controller里面,但是最近在读一些代码的时候,发现大多数都是使用mongoose的validator,直接在schema里面做验证。
我想问下,这两种方式哪个来说更好一些?
谢谢。
问题解答
回答1:mongoose的validator源自MongoDB 3.2+的validation特性
请参看官方文档:
https://docs.mongodb.com/mast...
MongoDB通过valiation提供了类似于关系型数据库的Constraint的功能。
这里提供一些前后文,供您参考,并结合实际的情况选择。
整体来说,MongoDB逐渐推出很多新的特性,这些新的特性一方面完善了功能,另一方面给开发者更多的帮助。
例如在这个月新拿到的3.4版本中,MongoDB提供了图运算graph processing,提供了类似于Neo4J的功能;MongoDB提供了导航查询faceted navigation,更好的支持维度查询;还完善了decimal数据模型,保存价格等金额类数据更方便了。
MongoDB有很多新的特性值得开发者关注,可以参考下面的新版本的功能更新的文档:
3.4新的特性https://docs.mongodb.com/mast...
3.2新的特性https://docs.mongodb.com/mast...
Love MongoDB! Have Fun!