Size: a a a

GraphQL — русскоговорящее сообщество

2021 May 28

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
откуда берется метод `paginate(arguments, field_relation)` и что он делает?
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
`Types::SeoSettingType.connection_type` сам умеет делать странички
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
он в private находится и в итоге выполняет 'relation.offset(offset).limit(limit)'
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
а зачем?
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
посмотри документацию по `connection_type`, он сам всё сделает
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
Offset и limit по умолчанию применяются?
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
Спасибо! Видимо где-то прозевал и глаз совсем уже замылился
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
а зачем он был бы нужен если бы этого не делал? 🙂 там же еще pageInfo
источник

n

nikitasius in GraphQL — русскоговорящее сообщество
Чей-то ПМ в чат пожаловал 🤣🤣
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
Я правильно понимаю, что connection_type в graphql ruby из коробки не работает с оффсетной пагинацией (аргумент offset не отрабатывает также как first, например), а только с курсорной. И нужно патчить Pagination::Connection класс? Или что-то в этом роде?
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
верно, но уже есть реализация https://github.com/bibendi/graphql-connections
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
ой, не так прочитал, наоборот стандартная реализация работает с оффсетом
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
и это очень плохо, нужно использовать настоящие курсоры
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
keyset pagination
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
Эмм, дико извиняюсь. Есть какая-нибудь статья или пример работы с оффсетом. Так как пытался сделать запрос и если тот же аргумент first проходит, то offset уже нужно как аргумент для field прописать и, как понимаю, там же и использовать.
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
нужно использовать first и after, в after передавать cursor
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
cursor возвращается из поля endCursor
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
вот спека на connections https://relay.dev/graphql/connections.htm
источник

DM

Denis Mironov in GraphQL — русскоговорящее сообщество
Тогда получается нужно знать endCursor для каждой страницы (каждого набора данных на странице), если пользователь запросит рандомную страницу.
источник

DT

Dmitry Tsepelev in GraphQL — русскоговорящее сообщество
а зачем пользователю рандомная страница?
источник