📅  最后修改于: 2022-03-11 14:50:04.500000             🧑  作者: Mango
from django.db.models import CharField
from django_case_insensitive_field import CaseInsensitiveFieldMixin
class CaseInsensitiveCharField(CaseInsensitiveFieldMixin, CharField):
"""[summary]
Makes django CharField case insensitive \n
Extends both the `CaseInsensitiveMixin` and CharField \n
Then you can import
"""
def __init__(self, *args, **kwargs):
super(CaseInsensitiveMixin, self).__init__(*args, **kwargs)
from .fields import CaseInsensitiveCharField
class UserModel(models.Model):
username = CaseInsensitiveCharField(max_length=16, unique=True)
user1 = UserModel(username='user1')
user1.save() # will go through
user2 = UserModel(username='User1')
user2.save() # will not go through