AdonisJS Связать с несколькими отношениями oneToMany

Как связать массив значений из отношения 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 ответ

Решение

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

for (const u of users) {
    const user = await User.find(u)
    await profile.user().associate(user)
}
Другие вопросы по тегам