Sie könnten ein benutzerdefiniertes Modellfeld definieren, das von models.CharField
abgeleitet wird .Dieses Feld könnte auf doppelte Werte prüfen, wobei die Groß-/Kleinschreibung ignoriert wird.
Die Dokumentation zu benutzerdefinierten Feldern finden Sie hier http://docs.djangoproject.com/en/dev/howto/custom-model-fields/
Unter http://code.djangoproject.com/browser/django/trunk/django/db/models/fields/files.py finden Sie ein Beispiel dafür, wie Sie ein benutzerdefiniertes Feld erstellen, indem Sie Unterklassen eines vorhandenen Felds erstellen.
Sie könnten das Citext-Modul von PostgreSQL https://www.postgresql.org/docs/current/static/citext.html
verwendenWenn Sie dieses Modul verwenden, könnte das benutzerdefinierte Feld "db_type" als CITEXT für PostgreSQL-Datenbanken definieren.
Dies würde zu einem Vergleich ohne Berücksichtigung der Groß-/Kleinschreibung für eindeutige Werte im benutzerdefinierten Feld führen.