使用sailsjs上的自定义函数覆盖水线模型的默认行为

时间:2015-02-07 13:59:24

标签: javascript model sails.js waterline

我的环境:
帆v0.10.5
MySQL

我在 config / models.js 文件中创建了一个函数,以检查模型是否具有名为" slug"的属性。如果有,我将根据模型属性创建一个slug(让我们说我将使用模型的名称属性),如下所示:

beforeCreate: function (model, cb) {
    if(this.attributes.hasOwnProperty('slug')){
        if (!model.name) {
            return cb({err: ["Must have a name!"]});
        }

        model.slug = StringHelper.sluggify(model.name).replace(/\s+/g, '-').toLowerCase();
    }

    return cb(null, model);
}

在这个例子中,我使用了模型"名称"属性,但它也将使用其他属性。

现在,在我的特定模型中,让我们说 Message.js ,我创建了另一个 beforeCreate 函数,该函数应该覆盖一般的models.js函数,但它没有&# 39;吨。第一个是被称为静止的那个。

我将如何实现这样的环境,我可以在models.js上定义一般函数,但仍然可以在特定模型文件上覆盖它们?

0 个答案:

没有答案