prisma mongodb nested connect не работает

Код , который не работает.

async function postRegisterFavoriteNews(req, res) {
    const {news} = req.body;
    const userId = res.locals.user.id;
    await prisma.updateUser({
        where: {id: userId},
        data: {
            settings: {
                update: {
                    favoriteNews: {
                        connect: [{id: news}]
                    }
                }
            }
        }
    })

    const newses = await userFavoriteNewses(userId)
    res.status(OK).json(newses);
}

эта строка вроде не работает.. (также не работает с set)

connect: [{id: news}]

но операции обновления без массива работают нормально. например, обновление заметки внутри вложенного объекта работает нормально. бота userID и новости (id) действительны

model.graphql

type User {
    id: ID! @id
    name: String!
    uid: String! @unique
    robot: Boolean! @default(value: false)
    settings: UserSettings!
    registeredAt: DateTime! @createdAt
}

type UserSettings @embedded{
    favoriteNews: [News]! @relation(link: INLINE)
    memo: String!
}

TL;DR

что я пытаюсь сделать.

добавить отношение новости к профилю пользователя. избранноеНовости

Например, новости с идентификатором 1 будет выражено как user1.settings.favoriteNews.push(1)

--- редактировать --- после изменения настроек на невложенные, работает. похоже на ошибку вложенной модели prisma & mongo. все еще нужно решение для этого.

0 ответов

Другие вопросы по тегам