код, который не работает.
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}]
, но не Операции обновления массива работают нормально. Например, обновление памятки внутри вложенного объекта работает нормально. ID пользователя и новости (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
что я пытаюсь сделать.
добавить отношение новостей к профилю пользователя.favoriteNews
Например, новость с идентификатором 1
будет выражаться как user1.settings.favoriteNews.push(1)
--- edit --- после изменения настроек на не вложенные, оно работает. Похоже, prisma & mon go ошибка вложенной модели. все еще нужно решение для этого.