Внедрение пользовательских ролей в моем приложении электронной коммерции на основе Django
Я закончил работу над своим веб-приложением Django для электронной коммерции. И теперь я хочу добавить возможность работы с ролями клиентов (admin, staff, merchant, customer). У меня возникли проблемы с настройкой этого в моем проекте. Буду очень признателен, если кто-то сможет помочь мне в этом процессе. Я делюсь деталями проекта.
Моя существующая модель клиента
class Customer(models.Model):
user=models.OneToOneField(User,on_delete=models.CASCADE)
# user=models.OneToOneField(User,on_delete=models.CASCADE) -change I made to add CustomUser model
phone=models.CharField(max_length=10)
city = models.TextField(max_length=30)
state = models.TextField(max_length=30)
def __str__(self):
return self.user.username
Моя модель CustomerUser, которую я хочу внедрить в свой проект
class CustomUser(AbstractUser):
ROLES=(
('admin', 'Admin'),
('staff', 'Staff'),
('merchant', 'Merchant'),
('user', 'User'),
)
role = models.CharField(max_length=8,choices=ROLES,default='Customer')
def is_admin(self):
return self.role == 'admin'
def is_staff(self):
return self.role == 'staff'
def is_merchant(self):
return self.role == 'merchant'
Вход, выход и регистрация перестали работать, как только я добавил эту модель CustomUser в свой проект.