sailjs将自定义逻辑移动到单独的节点模块中

时间:2017-07-11 15:13:04

标签: javascript sails.js

我正在使用sailjs,我目前正在构建一些简单的引导逻辑,用于检查现有记录,并在必要时创建一些默认数据。这一切都运作良好。

我试图弄清楚(也许它更像是一个节点问题),我该如何将该逻辑移动到一个单独的节点模块中?

逻辑目前看起来如下;

list view

这一切都正常。但是,我想要做的是将Roles的逻辑完全转移到一个单独的javascript文件中。喜欢的东西;

module.exports.bootstrap = function (cb) {

    Role.count().exec(function (err, numRoles) {

    if (err) {
      return cb(err);
    }

    if (numRoles > 0) {
      return cb();
    }

    //create the default role records;
    var roles = [];

    roles.push({
        "cd": "admin",
        "name": "Admin",
        "description": "Admin user of the system"
    },
    {
        "cd": "normal",
        "name": "normal",
        "description": "Standard user of the system"
     });


    Role.create(roles).exec(function(err, records) {
        if(err) {
          return cb(err);
        }

        return cb();
    });
}

使用RoleBootstrap看起来像

var roleBootstrap = require('roleBootstrap');

module.exports.bootstrap = function (cb) {

 roleBootstrap.defaultRecords().exec(function(err) {
     if (err) { return cb(err);}
     return cb();
 } );

}

我一直得到异常细节:错误:无法找到模块' ./ services / RoleBootstrap.js'当试图做风帆升降机

任何见解/建议/等都将非常感激。知道如何做这样的事情会有所帮助。

我确实考虑过将defaultData方法添加到Role模型本身..但我仍然想知道如何创建类似上面的内容。

谢谢, 迪安。

0 个答案:

没有答案