Size: a a a

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

2019 October 07

a

artalar in GraphQL — русскоговорящее сообщество
egoarka
я же кидал топовый клиент
graphql-zeus он чем не угодил?
Я не пойму, он умеет из стринги тип выводить?

https://github.com/graphql-editor/graphql-zeus#use-in-your-project-to-generate-code
источник

e

egoarka in GraphQL — русскоговорящее сообщество
Неа
источник

AN

Artem Nemtsev in GraphQL — русскоговорящее сообщество
Ребят, как вы на основе Entity делаете Input Type? Просто  implements<Class> и пишете нужные свойства в input или ссылаетесь на конкретные типы класса вида title: Class['title]?
источник

KN

Kirill Nesmeyanov in GraphQL — русскоговорящее сообщество
Nikita Grishin
Ну так батчинг нужен лишь для того, чтобы сгруппировать запросы, если нужен порядок - надо отправлять в следующий батч
Ну у Relay это почему-то нормально сделано
источник

KN

Kirill Nesmeyanov in GraphQL — русскоговорящее сообщество
да и как бы никто не мешает взять и перевормировать запрос в рамки одного query
источник

KN

Kirill Nesmeyanov in GraphQL — русскоговорящее сообщество
т.е. вместо:
[
   {"query": "query Example1 { field }"},
   {"query": "query Example2 { field }"}
]


Сделать:
{"query": "{
   Example1_field: field
   Example2_field: field
}"},
источник

KN

Kirill Nesmeyanov in GraphQL — русскоговорящее сообщество
Всё равно аст квери и так и так разбирается, и сгенерировать правила маппинга + рандомные идентификаторы, запихнув всё это в один запрос - дело пяти минут
источник

AD

Arthur Donkovtsev in GraphQL — русскоговорящее сообщество
Все привет) может кто сможет подсказать. Настраиваю ssr с помощью Apollo , вроде все по докам - но почему после  getDataFromTree - client пустой. Никак не могу понять в чем причина.
источник

AD

Arthur Donkovtsev in GraphQL — русскоговорящее сообщество
источник

AD

Arthur Donkovtsev in GraphQL — русскоговорящее сообщество
источник

AD

Arthur Donkovtsev in GraphQL — русскоговорящее сообщество
Один клиент, другой сервер.
источник

MS

Misha Shandra in GraphQL — русскоговорящее сообщество
всем хай, у меня реализована аторизация на auth0, когда пользователь регистрирует свою учотку то в базе создаеться колонка, мне нужно что бы создавалась поле в другой таблице для него (связано по ид с первым). Можно ли написать как то тригер или додать что то до кода (пример кода снизу) ??
источник

MS

Misha Shandra in GraphQL — русскоговорящее сообщество
`{
 \"query\":
   \"mutation(
     $userId: String!,
     $nickname: String,
     $email: String
   ) {\\n          
     insert_SystemUsers(\\n            
     objects: [
       {
         account_id: $userId,
         username: $nickname,
         email: $email
       }
     ]\\n            
     on_conflict: {\\n              
       constraint: SystemUsers_account_id_key\\n              
       update_columns: [ last_seen ]\\n            
     }\\n          
   ) {\\n            
     affected_rows\\n          
   }\\n        
 }\",
 \"variables\":{
   \"userId\":\"${userId}\",
   \"nickname\":\"${nickname}\"
   ,\"email\":\"${email}\"
 }
}`
источник
2019 October 08

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Kirill Nesmeyanov
т.е. вместо:
[
   {"query": "query Example1 { field }"},
   {"query": "query Example2 { field }"}
]


Сделать:
{"query": "{
   Example1_field: field
   Example2_field: field
}"},
Можешь мне руки отрубить, я батчинг придумал 😉

И реализуется он на уровне сервера, и поэтому этого нет в графкуэль спеки.

Т.е. сервер получая массив, сам под копотом дергает несколько раз выполнение запросов.

А кейсы для батчинга, это прогрев каких-либо дашбордов у которых много запросов под капотом. И сбор данных проходит отдельными мелкими запросами. Тогда батчить оправдано.

Но я честно батчинг не юзаю. Мне лучше прогрессивно апп загружать по частям (так юзеру веселее), чем ждать пока все одним стаканом прилетит.
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Kirill Nesmeyanov
Всё равно аст квери и так и так разбирается, и сгенерировать правила маппинга + рандомные идентификаторы, запихнув всё это в один запрос - дело пяти минут
Не всегда это можно сделать.

Запросы на клиенте должны быть забилдены, т.е. быть статическими.

И приложение от разных входящих условий может генерить кучу разных запросов, которую накладно на клиенте перегенерировать. А проще отправить через Network Layer в виде массива.
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Kirill Nesmeyanov
т.е. вместо:
[
   {"query": "query Example1 { field }"},
   {"query": "query Example2 { field }"}
]


Сделать:
{"query": "{
   Example1_field: field
   Example2_field: field
}"},
Переменных еще добавь с одинаковыми названиями, например sort и filter. И тогда еще трабла с переименованием появляется. Не шибко сложная, но геммора больше добавляет, чем реализация батчинга через массив.
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
У аполло порядка 80% рынка фронта. Поэтому поддержка батчинга со стороны сервера желательна, она твоим пользователям либы дает меньше проблем.
источник

IZ

Ilya Zabozlaev in GraphQL — русскоговорящее сообщество
Ребят, есть задача - кастомные поля в постгресе
источник

IZ

Ilya Zabozlaev in GraphQL — русскоговорящее сообщество
Я думаю делать через JSON
источник

IZ

Ilya Zabozlaev in GraphQL — русскоговорящее сообщество
Можно ли завести скалярку JSON?
источник