Sails.js:Bootstrap遇到错误

时间:2015-04-13 10:39:24

标签: javascript node.js sails.js waterline

我的/config/bootstrap.js中有以下代码,用于插入一些用于开发的虚拟数据。

/* global User */
/* global Category */


var insertDummyUsers = function() {

sails.log.info('Inserting dummy users');

  var users = [
    { email: 'test@test.com' },
    { email: 'test1@testdomain.gr' },
    { email: 'test2@cnn.com'}
  ];

  return User.create(users);

};

var insertDummyCategories = function() {

  sails.log.info('Inserting dummy categories');

  var categories = [
    { name: 'Furniture' },
    { name: 'Lighting' },
    { name: 'Computers' },
    { name: 'Networking' },
    { name: 'Telecommunications' },
    { name: 'TV & Audio' }
  ];

  return Category.create(categories);
};

module.exports.bootstrap = function(cb) {

  User.count().then(function(err,count){

    if (count > 0) {

      cb();

    } else {

     // Insert some dummy users
      insertDummyUsers()
      .then(insertDummyCategories)
      .then(cb);



    }
  });
};

当我lift我得到的应用时:

info: Inserting dummy users info: Inserting dummy categories error: Bootstrap encountered an error: see(below) error: [ { name: 'Networking, id: 4, createdAt: ..., updatedAt: ... }] [... so on]

但是我可以看到数据被保留在数据库中,但应用程序没有被解除。

这里发生了什么?它真的没有任何线索。

修改 migrate:设置为drop

类别模型定义如下:

module.exports = {

attributes: {

    name: {
        type: 'string'
    },

    /* Associations */
    subcategories: {
        collection: 'Subcategory',
        via: 'parentCategory'
    }

}
};

1 个答案:

答案 0 :(得分:1)

当我编辑你的创建功能时,我觉得这很奇怪。即使回调函数为空,它也能工作。

我需要多看一点,但这可能是一个需要报告的错误。

return Category.create(categories, function(err, returnModel) {
sails.log.debug('This should work!!! -- Error : ' + err + 'model : ' + 
    returnModel); });