poulpe/communication/models.py

54 lines
1.1 KiB
Python
Raw Normal View History

2017-07-15 18:13:45 +02:00
from django.db import models
from django.contrib.auth.models import User
class Notifying(models.Model):
subscribed = models.ManyToManyField(
User,
verbose_name=_("abonnés"),
related_name="subscribed_to"
)
def get_url(self, *args, **kwargs):
pass
class Notification(models.Model):
sent_by = models.ForeignKey(Notifying)
about = models.ForeignKey(Notifying)
to = models.ForeignKey(
User,
verbose_name=_("envoyée à")
)
viewed_at = models.DateTimeField(
_("Vue à"),
blank=True
)
text = models.TextField(_("corps de la notification"))
2017-07-15 18:37:47 +02:00
class Commentable(Notifying):
pass
class Thread(models.Model):
topic = models.OneToOne(Commentable)
class Comment(models.Model):
thread = models.ForeignKey(Thread)
parent = models.ForeignKey(
'Comment',
related_name="replies",
)
author = models.ForeignKey(
User,
verbose_name=_("auteur"),
editable=False
)
at = models.DateTimeField(
_("date d'écriture"),
auto_now_add=True
)
text = models.TextField(_("corps du message"))