strawberry-graphql/strawberry-django

Enable atomic nested mutations

Offen

#628 geöffnet am 13.09.2024

 (3 Kommentare) (4 Reaktionen) (0 zugewiesene Personen)Python (152 Forks)auto 404
enhancementhelp wantedproposal

Repository-Metriken

Stars
 (496 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

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
    }
  }
}

Contributor Guide