strawberry-graphql/strawberry-django

Enable atomic nested mutations

Ouverte

#628 ouverte le 13 sept. 2024

 (3 commentaires) (4 réactions) (0 personne assignée)Python (152 forks)auto 404
enhancementhelp wantedproposal

Métriques du dépôt

Stars
 (496 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Strawberry supports serialization for nested mutations but Strawberry-Django doesn't seem to be able do it in an atomic way

Feature Request Type

  • New behavior

Description

In the below example, I expect these things to happen in an atomic way so that if a credit card charge fails we do have to go back out previous transactions.

I've seen similar offers from other libraries such as Prisma.

mutation (
  $createInvoice: CreateInvoiceInput!
  $chargeCreditCard: ChargeCreditCardInput!
  atomic: true
) {
  createInvoice: invoice {
    createInvoice(input: $createInvoice) {
      id
    }
  }

  chargeCreditCard: invoice {
    chargeCreditCard(input: $chargeCreditCard) {
      id
    }
  }
}

Guide contributeur