创建临时风帆模型

时间:2018-02-22 16:39:22

标签: sails.js

对于单元测试,我需要创建临时模型对象而不将其保存在DB中,只需要有一些实例方法。

模型结构示例

//User.js - my model
module.exports = {

  attributes: {

    firstName : { type: 'string' },

    lastName : { type: 'string' },


    getName: function () {
      return this.firstName + ':' + this.lastName;
    }
  }
};

我有下一个对象

const testData = {
    firstName: 'Foo',
    lastName: 'Bar'
};

此行在db

中创建新记录
User.create(testData);

是否可以避免创建唱片?我该怎么办?

1 个答案:

答案 0 :(得分:1)

要回答您的初始问题,关闭或关闭Sails是否在您根据我的知识调用Model.create()时是否在数据库中实际创建记录的功能不存在,没有您或我的解决方法已在评论中描述。

据说,Sails确实提供了一个简单的测试和开发解决方案。

为了方便开发,Sails提供了一个名为sails-disk的内置数据库适配器。此适配器通过读取和写入计算机硬盘驱动器上的JSON文件来模拟真实数据库。

如果您使用的是Sails版本< v1 see documentation

在config / connection.js

中添加与数据库的连接
localDiskDb: {
    adapter: 'sails-disk'
},

在您正在测试的模型中,将模型指向风帆 - 磁盘连接。

...
module.exports = {
    connection: "localDiskDb",

    attributes: {
...

如果您使用的是Sails版本> = v1 see documentation

相反,在config / datastores.js

中添加sails-disk作为数据存储区
localDiskDb: {
    adapter: 'sails-disk'
},

在上面测试的模型中,将模型指向sails-disk数据存储区。

...
datastore: 'localDiskDb',
...
相关问题