26 lines
844 B
Python
26 lines
844 B
Python
from django.db import models
|
|
|
|
from django_core.models import AbstractBaseModel
|
|
|
|
from core.apps.tasks.choices.comment import MessageChoice
|
|
|
|
|
|
class Comment(AbstractBaseModel):
|
|
task = models.ForeignKey('tasks.Task', on_delete=models.CASCADE, related_name='comments')
|
|
message = models.TextField()
|
|
type = models.CharField(max_length=255, choices=MessageChoice.choices)
|
|
created_by = models.ForeignKey('accounts.User', on_delete=models.CASCADE, related_name='comments')
|
|
|
|
def __str__(self):
|
|
return f"{self.message} created by {self.created_by}"
|
|
|
|
|
|
class CommentFile(AbstractBaseModel):
|
|
comment = models.ForeignKey(
|
|
'tasks.Comment', on_delete=models.CASCADE, related_name='files'
|
|
)
|
|
file = models.FileField(upload_to='comments/')
|
|
|
|
def __str__(self):
|
|
return f"File for comment {self.comment_id}"
|