【问题标题】:What is the difference between class methods and instance methods [sequelize]类方法和实例方法有什么区别【续集】
【发布时间】:2015-12-27 01:37:11
【问题描述】:

Sequelize 允许您向model 添加自定义方法,有两种方法可以这样做:

  • 类方法:{}
  • instanceMethods:{}

在 Sequelize 中,我找不到关于这两个对象差异的解释。谁能举例说明何时使用其中一个或另一个的区别?

【问题讨论】:

    标签: database node.js sequelize.js


    【解决方案1】:

    类是你调用sequelize.define时得到的对象。它代表整个表。

    var User = sequelize.define('user', {...});
    

    实例就像该类的一个单元,即集合表中的一行:

    User.create({}).then(function(user) {
      // `user` is an instance.
    });
    

    类方法是不需要实例的函数。你可以这样称呼:

    User.myMethod();
    

    实例方法是对单个实例进行操作的方法。你可以这样称呼他们:

    user.myMethod();
    

    this 在类方法中是一个类。实例方法中的this 是一个实例(显然)。

    【讨论】:

      猜你喜欢
      • 2010-11-06
      • 2015-04-18
      • 1970-01-01
      • 2013-06-12
      • 1970-01-01
      • 2012-10-21
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      相关资源
      最近更新 更多