Connector/Python includes a mysql.connector.django module
      that provides a Django back end for MySQL. This back end supports
      new features found as of MySQL 5.6 such as fractional seconds
      support for temporal data types.
    
Django Configuration
      Django uses a configuration file named
      settings.py that contains a variable called
      DATABASES (see
      https://docs.djangoproject.com/en/1.5/ref/settings/#std:setting-DATABASES).
      To configure Django to use Connector/Python as the MySQL back end, the
      example found in the Django manual can be used as a basis:
    
DATABASES = {
    'default': {
        'NAME': 'user_data',
        'ENGINE': 'mysql.connector.django',
        'HOST': '127.0.0.1',
        'PORT': 3306,
        'USER': 'mysql_user',
        'PASSWORD': 'password',
        'OPTIONS': {
          'autocommit': True,
          'use_oure': True,
          'init_command': "SET foo='bar';"
        },
    }
}
      It is possible to add more connection arguments using
      OPTIONS.
    
Support for MySQL Features
      Django can launch the MySQL client application
      mysql. When the Connector/Python back end does this, it
      arranges for the sql_mode system
      variable to be set to TRADITIONAL at startup.
    
      Some MySQL features are enabled depending on the server version.
      For example, support for fractional seconds precision is enabled
      when connecting to a server from MySQL 5.6.4 or higher. Django's
      DateTimeField is stored in a MySQL column
      defined as DATETIME(6), and
      TimeField is stored as
      TIME(6). For more information about fractional
      seconds support, see Fractional Seconds in Time Values.
    
Using a custom class for data type conversation is supported as a subclass of mysql.connector.django.base.DjangoMySQLConverter. This support was added in Connector/Python 8.0.29.