Můžete definovat vlastní pole modelu odvozené z models.CharField
.Toto pole může kontrolovat duplicitní hodnoty, ignoruje velká a malá písmena.
Dokumentace vlastních polí je zde http://docs.djangoproject.com/en/dev/howto/custom-model-fields/
Podívejte se na http://code.djangoproject.com/browser/django/trunk/django/db/models/fields/files.py, kde najdete příklad, jak vytvořit vlastní pole podtřídou existujícího pole.
Můžete použít modul citext PostgreSQL https://www.postgresql.org/docs/current/static/citext.html
Pokud použijete tento modul, může vlastní pole definovat "db_type" jako CITEXT pro databáze PostgreSQL.
To by vedlo k rozlišování malých a velkých písmen u jedinečných hodnot ve vlastním poli.