20 lines
766 B
Python
20 lines
766 B
Python
from django.contrib.auth.models import AbstractUser
|
|
from django.db import models
|
|
|
|
# Create your models here.
|
|
|
|
class User(AbstractUser):
|
|
allow_notes_from = models.ManyToManyField('User', related_name='allowed_notes_to', blank=True)
|
|
expiry_seconds = models.PositiveIntegerField(default=86400)
|
|
|
|
|
|
class Note(models.Model):
|
|
from_user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='created_notes')
|
|
to_user = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, related_name='received_notes')
|
|
note = models.TextField()
|
|
expiry = models.DateTimeField()
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
|
|
|
def __str__(self):
|
|
return f"{self.from_user.username} -> {self.to_user.username}: {self.note[:30]}"
|