Thanos
Thanos

Reputation: 854

Sails.js: Bootstrap encountered an error

I have the following code in my /config/bootstrap.js that inserts some dummy data for development.

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


var insertDummyUsers = function() {

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

  var users = [
    { email: '[email protected]' },
    { email: '[email protected]' },
    { email: '[email protected]'}
  ];

  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);



    }
  });
};

When I lift the app I am getting:

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

However I can see that the data is being persisted in the database but the app is not getting lifted.

What's going on here? It really gives no clue.

EDIT migrate: is set to drop

The Category model is defined as follows:

module.exports = {

attributes: {

    name: {
        type: 'string'
    },

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

}
};

Upvotes: 3

Views: 1231

Answers (1)

4Dev
4Dev

Reputation: 241

I find this really bizarre, when I edit your create function like below. It works even when the callback function is empty.

I'll have to look a bit more, but this could be a bug that needs to be reported.

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

Upvotes: 1

Related Questions