Как добавить атрибут с массивом целочисленных данных в модели sails.js? - PullRequest
0 голосов
/ 25 сентября 2018

Я использую паруса с postgresql, и у меня есть пользователь с массивом идентификаторов групп.Я хочу сохранить идентификатор группы в пользовательской таблице.моя модель пользователя выглядит так:

    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.Ожидается идентификатор, представляющий связанную запись, или null, указывающий, что не будет связанной записи.Но указанное значение не является действительным user_groups.Вместо числа (ожидаемый тип pk) получено: [2]

1 Ответ

0 голосов
/ 25 сентября 2018

Чтобы связать многих с одним в Waterline, синтаксис немного отличается.В этом объекте для этого поля вам нужны collection и via (имя соответствующего поля в связанной коллекции).Таким образом, в User (для соглашения, я делаю название модели в единственном числе и PascalCase) это будет выглядеть примерно так:

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

В то время как в модели Group у вас есть:

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