mirror of
				https://github.com/graphql-python/graphene.git
				synced 2025-11-04 01:47:45 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1001 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1001 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
AbstractTypes
 | 
						|
=============
 | 
						|
 | 
						|
An AbstractType contains fields that can be shared among
 | 
						|
``graphene.ObjectType``, ``graphene.Interface``,
 | 
						|
``graphene.InputObjectType`` or other ``graphene.AbstractType``.
 | 
						|
 | 
						|
The basics:
 | 
						|
 | 
						|
- Each AbstractType is a Python class that inherits from ``graphene.AbstractType``.
 | 
						|
- Each attribute of the AbstractType represents a field (a ``graphene.Field`` or
 | 
						|
  ``graphene.InputField`` depending on where it is mounted)
 | 
						|
 | 
						|
Quick example
 | 
						|
-------------
 | 
						|
 | 
						|
In this example UserFields is an ``AbstractType`` with a name. ``User`` and
 | 
						|
``UserInput`` are two types that have their own fields
 | 
						|
plus the ones defined in ``UserFields``.
 | 
						|
 | 
						|
.. code:: python
 | 
						|
 | 
						|
    import graphene
 | 
						|
 | 
						|
    class UserFields(graphene.AbstractType):
 | 
						|
        name = graphene.String()
 | 
						|
 | 
						|
    class User(graphene.ObjectType, UserFields):
 | 
						|
        pass
 | 
						|
 | 
						|
    class UserInput(graphene.InputObjectType, UserFields):
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
.. code::
 | 
						|
 | 
						|
    type User {
 | 
						|
      name: String
 | 
						|
    }
 | 
						|
 | 
						|
    inputtype UserInput {
 | 
						|
      name: String
 | 
						|
    }
 |