【问题标题】:SailsJS stop unwanted data entering the databaseSailsJS 阻止不需要的数据进入数据库
【发布时间】:2014-01-08 22:58:54
【问题描述】:

因此,使用sailsJS,您可以将任何旧数据放入模型并将其放入数据库,即使该项目未在attributes 对象中定义。

有什么方法可以防止这种情况发生吗?尝试执行if 然后抛出错误似乎很愚蠢,因为会有太多事情无法通过。

例如,我刚刚遇到了一个问题,我有一个用户列表,我通过前端的角度 ng-repeat 显示它们,当我 put 保存用户的数据时,它也决定 @ 987654325@也和他们一起去

所以它自动保存到数据库中,当我再次刷新并获取数据时,"$$hashKey": "00I" 又回来了,因此导致了这个错误

错误:[ngRepeat:dupes] 不允许在转发器中重复。使用“跟踪” 表达式来指定唯一键。 中继器:(密钥,用户)在管理员 |过滤器:userSearch,重复键:对象:00I

这是来自角度。

ps.

据我所知,服务器使用的是默认的sails-disk

【问题讨论】:

    标签: javascript database node.js sails.js


    【解决方案1】:

    Sails.js 模型的默认模式是无模式的,这可能不是您需要的。因此,您所要做的就是将模式添加到您的模型中:

    module.exports = {
     schema: true,
    
     attributes: {
       // Define all your attributes here...
     }
    };
    

    之后,所有attributes中没有描述的值都会在模型保存过程中被自动过滤掉。

    【讨论】:

      猜你喜欢
      • 2013-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多