javascript - Sails/Waterline 中带有字符串数组的模型

标签 javascript sails.js waterline

sails/waterline 是否提供了一种声明方式来强制我的模型中的数组元素为字符串类型?还是我必须编写代码来执行此验证?

最佳答案

这似乎可以通过向模型添加自定义类型来实现(在 Waterline readme 中描述):

module.exports = {
    types: {
        stringArray: function(array){
            if (!Array.isArray(array)) {
                return false;
            } else {
                return array.every(function (value) {
                    return typeof(value) === "string"
                });
            }
        }
    },
    attributes: {
        someArrayOfStrings : {
            type: 'array',
            stringArray: true
        }
    }
};

自定义验证代码是必需的,但至少这种方法适用于验证引擎,并允许在模型中进行声明式验证。

关于javascript - Sails/Waterline 中带有字符串数组的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25979870/

相关文章:

node.js - 我从 sails.js 开始,我想知道如何从表单捕获数据并将其发送到 Controller ,然后发送到模型

node.js - npm 模块 'bcrypt' 未安装在 Windows 10 中并在 sails 中抛出错误

sails.js - 钩子(Hook)加载时间太长

javascript - 水线 (Sails.js) : AND conditions

javascript - 如何将自定义事件绑定(bind)到 Angular 中的父元素?

javascript - Jquery 在导航链接鼠标悬停时更改背景颜色

javascript - Vue动态组件渲染两次

node.js - 在 sails.js 中启动调度服务,永远从 sails 中访问所有水线模型

database - 选择和更新 oriento/orientjs 中的多个记录和水线中的事务

javascript - 如何使用 Require.js 实现 TinyMCE?