citext.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from django.db.models import CharField, EmailField, TextField
  2. __all__ = ["CICharField", "CIEmailField", "CITextField"]
  3. class CICharField(CharField):
  4. system_check_removed_details = {
  5. "msg": (
  6. "django.contrib.postgres.fields.CICharField is removed except for support "
  7. "in historical migrations."
  8. ),
  9. "hint": (
  10. 'Use CharField(db_collation="…") with a case-insensitive non-deterministic '
  11. "collation instead."
  12. ),
  13. "id": "fields.E905",
  14. }
  15. class CIEmailField(EmailField):
  16. system_check_removed_details = {
  17. "msg": (
  18. "django.contrib.postgres.fields.CIEmailField is removed except for support "
  19. "in historical migrations."
  20. ),
  21. "hint": (
  22. 'Use EmailField(db_collation="…") with a case-insensitive '
  23. "non-deterministic collation instead."
  24. ),
  25. "id": "fields.E906",
  26. }
  27. class CITextField(TextField):
  28. system_check_removed_details = {
  29. "msg": (
  30. "django.contrib.postgres.fields.CITextField is removed except for support "
  31. "in historical migrations."
  32. ),
  33. "hint": (
  34. 'Use TextField(db_collation="…") with a case-insensitive non-deterministic '
  35. "collation instead."
  36. ),
  37. "id": "fields.E907",
  38. }