Size: a a a

2018 November 23

IK

Ihor Katkov in pro.elixir
Dmitry Shpagin
Просто утверждение насчёт буста очень спорное, сколько времени надо ещё потратить чтобы научиться готовить графкл? Ну я научусь, надо ещё коллег учить, мне кажется это уже много потерь по времени
опять же зависит от проекта. На среднесрочной+ перспективе продукт будет готов раньше
источник

IK

Ihor Katkov in pro.elixir
это при условии, что в gql никто не умеет
источник

BB

Boris Beginin in pro.elixir
Очень не приятны кейсы с ассоциациями внутри ассоциаций и тд. Во всяком случае в руби это просто мега паршиов имхо.
источник

IK

Ihor Katkov in pro.elixir
Boris Beginin
Очень не приятны кейсы с ассоциациями внутри ассоциаций и тд. Во всяком случае в руби это просто мега паршиов имхо.
один раз даталоадером решается
источник

BB

Boris Beginin in pro.elixir
+ иногда тебе ненадо тянуть лишнии ассоциации
источник

BB

Boris Beginin in pro.elixir
Наверное это говорит мой осадок из рельс
источник

IK

Ihor Katkov in pro.elixir
так они не тянуться, если клиент их не запрашивает
источник

BB

Boris Beginin in pro.elixir
Так если у меня скажем апи эндпойнт /posts
источник

BB

Boris Beginin in pro.elixir
и в сериалиизеры мы к постам добавляем комменты
источник

DS

Dmitry Shpagin in pro.elixir
А как в графкл решается случай, если разные поля надо возвращать? Например админу можно возвращать все поля, а обычному юзеру часть.

Например в случае json api на рельсах можно несколько сериалайзеров завести и использовать нужный
источник

BB

Boris Beginin in pro.elixir
либо я должен писать обработку через параметр with_posts=true
Либо  я делаю отдельный реквест к /comments?with_post_id=xx
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Канонично - сделать 2 типа
источник

BB

Boris Beginin in pro.elixir
Dmitry Shpagin
А как в графкл решается случай, если разные поля надо возвращать? Например админу можно возвращать все поля, а обычному юзеру часть.

Например в случае json api на рельсах можно несколько сериалайзеров завести и использовать нужный
В абсенте ты можешь мидлвер написать с авторзацией
источник

BB

Boris Beginin in pro.elixir
изи бризи пишется
источник

BB

Boris Beginin in pro.elixir
обычно у меня типо
источник

BB

Boris Beginin in pro.elixir
логин мутация - могут все пользователи
квери для простолюдинов - все кто залогинин
админ квери. только для админов лол
источник

IK

Ihor Katkov in pro.elixir
Dmitry Shpagin
А как в графкл решается случай, если разные поля надо возвращать? Например админу можно возвращать все поля, а обычному юзеру часть.

Например в случае json api на рельсах можно несколько сериалайзеров завести и использовать нужный
я рассматриваю два.
1. Валидация на уровне gql. Еще не доходя до резолва можно абсент может определить, есть ли доступ к запрашиваемому полю у юзера
2. Валидация на уровне резолвера. Тут в зависимости от бизнесс логики решаешь возвращать ли ошибку или просто засетить nil
источник

DR

Dmitry Russ (Aleksandrov) in pro.elixir
Вообще, мне субъективно - я недавно смотрел в сторону dgraph, как базы данных с GraphQL+- языком запросов... теперь я субьективно уверен, что даже на чистом бекенде обращаться к базе данных через GraphQL+- вместо SQL бустит бэкенд разработку. У меня нет никаких пруфов - это вообще всё субьективно, но потенциал в этом субьективно большой.
источник

IK

Ihor Katkov in pro.elixir
Dmitry Shpagin
А как в графкл решается случай, если разные поля надо возвращать? Например админу можно возвращать все поля, а обычному юзеру часть.

Например в случае json api на рельсах можно несколько сериалайзеров завести и использовать нужный
вообще рекоммендую просто взять и попробовать
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ihor Katkov
я рассматриваю два.
1. Валидация на уровне gql. Еще не доходя до резолва можно абсент может определить, есть ли доступ к запрашиваемому полю у юзера
2. Валидация на уровне резолвера. Тут в зависимости от бизнесс логики решаешь возвращать ли ошибку или просто засетить nil
И в обоих этих случаях типизация идет нафик
источник