from django.db import models from django.contrib.auth.models import User class UserProfile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='profile') club = models.ForeignKey('clubs.Club', on_delete=models.SET_NULL, null=True, blank=True, related_name='user_profiles') def __str__(self): return f"{self.user.username} Profile" class UserPreferences(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='preferences') preferred_locale = models.CharField(max_length=10, default='de') default_view = models.CharField(max_length=10, default='list') wrestlers_view = models.CharField(max_length=10, default='list') wrestlers_items_per_page = models.IntegerField(default=10) wrestlers_filters = models.JSONField(default=dict, blank=True) trainers_view = models.CharField(max_length=10, default='list') trainers_items_per_page = models.IntegerField(default=10) trainers_filters = models.JSONField(default=dict, blank=True) exercises_view = models.CharField(max_length=10, default='list') exercises_items_per_page = models.IntegerField(default=10) exercises_filters = models.JSONField(default=dict, blank=True) trainings_view = models.CharField(max_length=10, default='list') trainings_items_per_page = models.IntegerField(default=10) trainings_filters = models.JSONField(default=dict, blank=True) homework_view = models.CharField(max_length=10, default='list') homework_items_per_page = models.IntegerField(default=10) homework_filters = models.JSONField(default=dict, blank=True) def __str__(self): return f"{self.user.username} Preferences"