Coverage for website/models/ReaderModel.py: 93%
14 statements
« prev ^ index » next coverage.py v7.5.0, created at 2025-09-13 15:29 -0300
« prev ^ index » next coverage.py v7.5.0, created at 2025-09-13 15:29 -0300
1from django.db import models
3from website.models import User
5# from django.dispatch import receiver
8class Reader(models.Model):
9 user = models.OneToOneField(User, on_delete=models.CASCADE)
10 reader_name = models.CharField(max_length=45, blank=True, null=True)
11 access_level = models.IntegerField(default=2)
12 saved_posts = models.ManyToManyField("Post", db_column="pk", blank=True)
14 created_at = models.DateField(auto_now_add=True)
16 image = models.ImageField(null=True, blank=True, default=None)
18 def __str__(self):
19 return f"{self.reader_name}"
21 # Quando houver um post na classe User, deverá ser chamado o método create_user_profile
23 # Ao criar este método, já foi criado o superuser, por isso o uso do try
24 # para não quebrar o app ao fazer login com admin
26 """@receiver(post_save, sender=User)
27 def create_user_profile(sender, instance, created, **kwargs):
28 try:
29 if created:
30 Reader.objects.create(user=instance)
31 except:
32 raise "Não foi possível criar o usuário."
34 @receiver(post_save, sender=User)
35 def save_user_profile(sender, instance, **kwargs):
36 try:
37 instance.reader.save()
38 except:
39 pass"""
41 class Meta:
42 db_table = "Reader"