Ассоциация один-ко-многим в парусах. js ошибка создания - PullRequest
0 голосов
/ 22 января 2020

Sails. js приложению не удается создать отношение один-ко-многим в пн go дБ:

В соответствии с официальной документацией я создал два связанных один-ко-многим юридические лица, Post-Likes. Я нашел их в папке api / models и определил следующим образом:

Like. js

module.exports = {
  attributes: {
    post: {
      model: 'post',
      required: true
    }
}

Post. js

module.exports = {
  attributes: {
    likes: {
      collection: 'like',
      via: 'post'
    },
    user: {
      model: 'user'
    }
  }
}

И я заполняю лайки для поста следующим утверждением на странице:

  const posts = await Post.find({user: id})
    .sort('createdAt DESC')
    .populate('user')
    .populate('likes');

После запуска парусов. js приложение с командой sails lift --drop и загрузка страница с кодом выше Я получаю следующее сообщение об ошибке в консоли:

ошибка: отправка ответа 500 («Ошибка сервера»): UsageError: Invalid populate (s). Детали: Не удалось заполнить like. В этой модели не определен атрибут с именем like.

at Object.module.exports [as user/profile] (/Users/new/Developer/ios/social/web_social/api/controllers/user/profile.js:8:30)
at processTicksAndRejections (internal/process/task_queues.js:93:5)

Я проверил экземпляр mon go db и не вижу ни одного пустого или нулевого атрибута like для объекта post :

enter image description here

1 Ответ

0 голосов
/ 28 января 2020

попробуйте сделать имя вашей модели initCap. как ниже

    module.exports = {
  attributes: {
    post: {
      model: 'Post',
      required: true
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...