updated to selfdelete inheritance
This commit is contained in:
@@ -171,5 +171,30 @@ class CustomUser(SoftDeleteModel, AbstractUser):
|
||||
"""Return the singleton anonymous user."""
|
||||
User = CustomUser
|
||||
return User.objects.get(username="anonymous")
|
||||
|
||||
|
||||
def has_blocked(self, user) -> bool:
|
||||
return self.blocking.filter(blocked_user=user).exists()
|
||||
|
||||
def is_blocked_by(self, user) -> bool:
|
||||
return self.blocked_by.filter(blocker=user).exists()
|
||||
|
||||
|
||||
class UserBlock(models.Model):
|
||||
blocker = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL,
|
||||
on_delete=models.CASCADE,
|
||||
related_name='blocking'
|
||||
)
|
||||
blocked_user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL,
|
||||
on_delete=models.CASCADE,
|
||||
related_name='blocked_by'
|
||||
)
|
||||
created_at = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
class Meta:
|
||||
unique_together = ('blocker', 'blocked_user')
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.blocker} blocked {self.blocked_user}"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user