Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript knex.js:在创建、更新和删除查询中合并验证规则_Javascript_Validation_Knex.js - Fatal编程技术网

Javascript knex.js:在创建、更新和删除查询中合并验证规则

Javascript knex.js:在创建、更新和删除查询中合并验证规则,javascript,validation,knex.js,Javascript,Validation,Knex.js,在使用Knex.js query builder库时,即使Knex不这样做,是否可以为创建、更新和删除操作合并数据验证规则 如果是,则: 呆在Knex里面是个好主意还是坏主意 如果这是一个不错的方法,有没有一个像样的例子可以让人指出 如果包含Bookshelf.js,会不会更好,摩擦更少 甚至Bookshelf也没有验证引擎。最好使用Bookshelf,因为它在事务期间提供事件。虽然bookshelf没有内置的验证引擎,但您可以使用。它是由同一个作者Knex和Bookshelf建造的。通过挂

在使用Knex.js query builder库时,即使Knex不这样做,是否可以为创建、更新和删除操作合并数据验证规则

如果是,则:

  • 呆在Knex里面是个好主意还是坏主意
  • 如果这是一个不错的方法,有没有一个像样的例子可以让人指出
  • 如果包含Bookshelf.js,会不会更好,摩擦更少

甚至Bookshelf也没有验证引擎。

最好使用Bookshelf,因为它在事务期间提供事件。虽然bookshelf没有内置的验证引擎,但您可以使用。它是由同一个作者Knex和Bookshelf建造的。通过挂接
保存
事件,可以有效地验证模型

下面是一个简单的例子:

var User = Bookshelf.Model.extend({
    tableName: 'users',
    initialize: function() {
        this.on('saving', this.validate, this);
    },
    validations: {
        email: ['required', 'validEmail'],
        username: ['required', 'alphaNumeric'],
        age: ['isNumeric']
    },
    validate: function(model, attrs, options) {
        return CheckIt(this.toJSON()).run(this.validations);
    }
});
请在GH上查看此内容以了解更多信息。

此处