AdonisJS Связать с несколькими отношениями oneToMany - PullRequest
0 голосов
/ 15 марта 2019

Как связать массив значений из отношения oneToMany в Adonis.

В документах показано следующее, чтобы связать одно значение

const Profile = use('App/Models/Profile')
const User = use('App/Models/User')

const user = await User.find(1)
const profile = await Profile.find(1)

await profile.user().associate(user)

Что если моя форма отправиламассив из нескольких идентификаторов пользователей. Я знаю, что мог бы использовать array.map и цикл для каждого из них, но это асинхронная команда, и мой контроллер попытался бы ответить клиенту до завершения отображения.

users.map(async (u)=>{
  let user = await User.find(u)
  await profile.user().associate(user)
})

return //I think this would return before the above map function completed.

1 Ответ

1 голос
/ 15 марта 2019

Вы можете сделать это с помощью

for (const u of users) {
    const user = await User.find(u)
    await profile.user().associate(user)
}
...