Вот что такое ошибка и как ее воспроизвести!
Согласно Порядок по связанным полям проблема, пользователи пока не могут отсортировать postsConnection
на orderBy: upvotes_DESC
когда это схема ?
type Post {
id: ID!
...
upvotes: [Upvote]!
...
}
Итак, я создал upvotesNumber
поле, которое принимает Int
.Каждый раз, когда я изменяю голосование от бэкэнда, я увеличиваю или уменьшаю поле.
Но для сортировки postsConnection
по upvotesNumber
, orderBy
представляет серьезную ошибку.
query {
postsConnection (
orderBy: upvotesNumber_DESC,
first: 1
) {
edges {
node {
id
title
createdAt
upvotesNumber
}
}
pageInfo {
endCursor
}
}
}
Предположим, у меня 3 сообщения. 1-е сообщение имеет 2 отзыва, т. Е. upvotesNumber: 2
, 2-е сообщение имеет 1 ответ, и третий пост имеет 0 голосов.
В этом случае Я получаю правильный postsConnection
порядок , и все три сообщения извлекаются с использованием аргумента after
.
Но, , если два или более двух сообщений имеют одинаковое значение upvotesNumber
, тогда эти сообщения не будут отображаться в postsConnection
!
Рассмотрим, 1-е сообщение имеет 1 upvote, 2-е сообщение также имеет 1 upvote, третье не имеет ... тогда тот же запрос вернет return 1-е и 3-е сообщение , но пропустит 2-е , даже если я использую правильное значение after
, которое дает endCursor
.
То же самое происходит, когда у 2-го и 3-го постов 0 голосов, а у 1-го поста 1Затем запрос будетверните 1-й и 2-й пост, но пропустите три.
Ожидаемое поведение
Я ожидаю, что все сообщения будут отображаться правильно, так же, как они отображаются при заказе createdAt_DESC
.createdAt_DESC
работает очень хорошо.Я хочу отсортировать сообщения по upvotesNumber
, даже если они одинаковые!
Версии: - Prisma Server: v1.26.0
prisma
CLI: prisma/1.26.4 (darwin-x64) node-v11.4.0
ОС: OSX Mojave
другие зависимости: prisma-client
, prisma-binding
и т. Д.
Дополнительный контекст Это делает меня неспособным использовать Prisma.Я новичок.Это может быть способ, которым работает Prisma, или я могу делать это неправильно.Пожалуйста, помогите 10
Ресурсы, которые я прочитал перед публикацией этого сообщения об ошибке
Заказ по нескольким полям
Упорядочить по смежным полям
Загрузить еще при ошибке Upvote
Этот ТАК вопрос о копии этого выпуска GitHub