찾다

 >  Q&A  >  본문

node.js - 数据验证放到schema中还是还是controller中

拿注册接口来说。

之前写代码的时候是吧各种验证(为空,email格式验证等)放到controller里面,但是最近在读一些代码的时候,发现大多数都是使用mongoose的validator,直接在schema里面做验证。

我想问下,这两种方式哪个来说更好一些?

谢谢。

PHPzPHPz2783일 전641

모든 응답(1)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-04-17 15:38:33

    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!

    회신하다
    0
  • 취소회신하다