Size: a a a

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

2021 September 23

AK

Aleksandr Kolesnikov in GraphQL — русскоговорящее сообщество
В том то и дело, я бы и сам рад сократить. Но все варианты решения, которые попадаются (под мои нужды)- либо не оч понятны, либо со своими нюансами, которые не реализованы у меня. Вот решил тут поинтересоваться.
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
вот вся ваша проверка: JSON.parse(JSON.serialize(args))
источник

AK

Aleksandr Kolesnikov in GraphQL — русскоговорящее сообщество
Да суть вопроса не в проверке, а в добавлении данных в массив. ) Проверку то, я со временем поправлю.
"используйте конкатенацию. userRole_id = [...user.userRole_id, ...args.userRole_id];
Но даже так не стоит делать" - Олег, подскажите куда можно глянуть и сделать как нужно, по технологии так сказать?
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Вашу проблему решит конкатенация показанная выше, но это не лучший метод в том плане, что у вас в резолвере происходит какая то логика с входящими данными. Поэтому хорошим методом будет вынесение ее, либо проектировать схему так, что обновление ролей не проиходит в сущности пользователя. Да, они относятся к пользователю, но по стольку по скольку. Идеальным решением updateUser обновляет данные только по юзеру, а отдельная мутация меняет роли для конкретного пользователя, а не происходит это все при обновлении юзера. Так будет правильнее
источник

AK

Aleksandr Kolesnikov in GraphQL — русскоговорящее сообщество
Была такая мысль, но подумал что это не совсем правильно. Оказывается все наоборот.
Спасибо огромное. Попробую реализовать отдельно. Ну и проверку поправлю )))
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
тогда у вас останется просто:    
await user.updateOne(args);
ОРМ сама проверит какие данные есть, а каких нет, undefined в бд не попадет
источник

AK

Aleksandr Kolesnikov in GraphQL — русскоговорящее сообщество
Да, так будет гораздо удобнее. Спасибо
источник

VK

Volodymyr Kornilov in GraphQL — русскоговорящее сообщество
test
источник

𝘂

𝘂𝘅𝗻𝗮𝗺𝗲... in GraphQL — русскоговорящее сообщество
/trust
источник

S

Shieldy in GraphQL — русскоговорящее сообщество
Принято!
источник

VK

Volodymyr Kornilov in GraphQL — русскоговорящее сообщество
return await user.updateOne(ObjectObject.assign(user, args))
источник

VK

Volodymyr Kornilov in GraphQL — русскоговорящее сообщество
если в аргументах не передаются пустые ключи
источник

y

yel' in GraphQL — русскоговорящее сообщество
вообще можно
let password = args.password !== undefined ? args.password : user.password;

просто так
let password = args.password || user.password;
или если прям на undefined, то по модному
let password = args.password ?? user.password;
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
да и так и так не надо проверять, орм любая проверяет на undefined
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
А пустые ключи в рамках мутации, очень странная  вещь) Там же строгая схема, либо ничего нет, либо есть
источник

A

Andrew in GraphQL — русскоговорящее сообщество
Помогите, мои сообщения удаляют
источник

𝘂

𝘂𝘅𝗻𝗮𝗺𝗲... in GraphQL — русскоговорящее сообщество
/trust
источник

S

Shieldy in GraphQL — русскоговорящее сообщество
Принято!
источник

A

Andrew in GraphQL — русскоговорящее сообщество
Есть сервис, который спустя несколько запросов, начинает выдавать закешированные данные, но если чуть изменить запрос (например запросить 10 последних постов, вместо 9), то приходят актуальные данные. Можно ли как-то исправить эту проблему, с помощью редактирования этих заголовков?
источник

A

Andrew in GraphQL — русскоговорящее сообщество
Если кто-то поможет, могу заплатить
источник