如何在sails.js模型中添加具有整数数组数据类型的属性?

时间:2018-09-25 10:27:18

标签: node.js postgresql model sails.js waterline

我将帆与postgresql一起使用,并且我的用户具有一组组ID。我想将组ID保存在用户表中。我的用户模型如下:

    module.exports = {
  attributes: {
    first_name: {
      type: 'string'
    },

    last_name: {
      type: 'string'
    },
    company: {
      type: 'string'
    },
    password: {
      type: 'string',
      minLength: 6,
      required: true,
      columnName: "password"
    },

    user_groups: {
      model: 'groups',
    }
  }

但是当我发送类似[2]的请求时,出现错误:

  

无法使用指定的user_groups。期望一个ID代表   相关记录,或null表示将没有   相关记录。但是指定的值无效   user_groups。而不是数字(预期的pk类型),得到:[2]

1 个答案:

答案 0 :(得分:1)

要在Waterline中进行多对一关联,语法略有不同。在该对象的该字段中,您需要collectionvia(关联集合中相应字段的名称)。因此,在User中(按照惯例,我将模型名称设为单数形式,并将PascalCase设为单数形式),

user_groups: {
    collection: 'Group',
    via: 'users'
}

Group模型中,您具有:

users: {
    collection: 'User',
    via: 'user_groups'
}