Apollo-server-adonis-directive-pack
  • Introduction
  • Usage
  • API
    • Query
      • @all
      • @find
    • Mutation
      • @create
      • @createMany
      • @update
      • @delete
    • Relationship
      • @hasOne
      • @hasMany
      • @belongsTo
Powered by GitBook
On this page
  • For a separate add use
  • Definition
  • Example

Was this helpful?

  1. API
  2. Mutation

@update

Updating one or more Lucid models

Required arguments for writing a mutation:

  • id - Int! / [Int!]! / String! / [String!]! / ID! / [ID!]!

  • input - type Input or type Input (array)

For a separate add use

/* ... */
const {
  UpdateDirective,
  UpdateTypeDefs
} = require('apollo-server-adonis-directives-pack/src/directives/mutation/Update')

makeExecutableSchema({ 
  /* ... */ 
  typeDefs: [ UpdateTypeDefs, /* ... */ ],
  schemaDirectives: { UpdateDirective, /* ... */} 
})

Definition

UpdateTypeDefs
directive @update(
  # By default, the model will be calculated from the name
  # of the returned "type" with the prefix 'App/Model/'
  model: String) on FIELD_DEFINITION

If you assign a different set to the input and output, this will throw an exception

Update directive updates by primary key of model

Example

input UpdatePostInput {
    name: String
    text: String!
}

type Mutation {
    updatePost(id: String!, input: UpdatePostInput! ): Post @update
    updateManyPost(id: [String!]!, input: UpdatePostInput!): [Post] @update
}
Previous@createManyNext@delete

Last updated 4 years ago

Was this helpful?

Carefully describe the mutation!

Error: Different sets are installed for input and output.

🤔
❗