Тип orderBy Int в запросе соединения Ошибка Prisma - PullRequest
0 голосов
/ 21 апреля 2019

Вот что такое ошибка и как ее воспроизвести!

Согласно Порядок по связанным полям проблема, пользователи пока не могут отсортировать 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

...