Browse Source

Used backend vendors in custom model fields docs.

Mariusz Felisiak 3 years ago
parent
commit
d7394cfa13
1 changed files with 3 additions and 2 deletions
  1. 3 2
      docs/howto/custom-model-fields.txt

+ 3 - 2
docs/howto/custom-model-fields.txt

@@ -394,13 +394,14 @@ If you aim to build a database-agnostic application, you should account for
 differences in database column types. For example, the date/time column type
 in PostgreSQL is called ``timestamp``, while the same column in MySQL is called
 ``datetime``. You can handle this in a :meth:`~Field.db_type` method by
-checking the ``connection.settings_dict['ENGINE']`` attribute.
+checking the ``connection.vendor`` attribute. Current built-in vendor names
+are: ``sqlite``, ``postgresql``, ``mysql``, and ``oracle``.
 
 For example::
 
     class MyDateField(models.Field):
         def db_type(self, connection):
-            if connection.settings_dict['ENGINE'] == 'django.db.backends.mysql':
+            if connection.vendor == 'mysql':
                 return 'datetime'
             else:
                 return 'timestamp'