我将帆与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]
答案 0 :(得分:1)
要在Waterline中进行多对一关联,语法略有不同。在该对象的该字段中,您需要collection
和via
(关联集合中相应字段的名称)。因此,在User
中(按照惯例,我将模型名称设为单数形式,并将PascalCase设为单数形式),
user_groups: {
collection: 'Group',
via: 'users'
}
在Group
模型中,您具有:
users: {
collection: 'User',
via: 'user_groups'
}