36377-vm/core/models.py
Flatlogic Bot 6a4de4e08c 1.0
2025-11-27 14:54:26 +00:00

33 lines
1.1 KiB
Python

from django.contrib.auth.models import AbstractUser
from django.db import models
class User(AbstractUser):
USER_TYPE_CHOICES = (
("student", "Student"),
("teacher", "Teacher"),
("client", "Client"),
("admin", "Admin"),
)
user_type = models.CharField(max_length=10, choices=USER_TYPE_CHOICES, default="student")
class Student(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
def __str__(self):
return self.user.username
class Teacher(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
skills = models.TextField(blank=True)
hourly_rate = models.DecimalField(max_digits=10, decimal_places=2, null=True, blank=True)
daily_rate = models.DecimalField(max_digits=10, decimal_places=2, null=True, blank=True)
def __str__(self):
return self.user.username
class Client(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
company_name = models.CharField(max_length=255, blank=True)
def __str__(self):
return self.user.username