dms/writer/models.py

45 lines
1.2 KiB
Python

from django.db import models
from django.utils.html import mark_safe
from markdown import markdown
class ModelSection(models.Model):
title = models.CharField(max_length=255)
order = models.IntegerField()
content = models.TextField()
document_type = models.ForeignKey('dms.DocumentType', related_name='model_sections')
class Meta:
ordering = ['order']
class Section(models.Model):
document = models.ForeignKey('dms.Document', related_name='sections')
order = models.IntegerField()
title = models.CharField(max_length=255)
content = models.TextField()
@staticmethod
def create_from_model_section(model_section, current_document):
section = Section.objects.create(
title=model_section.title,
order=model_section.order,
content=model_section.content,
document=current_document
)
section.save()
return section
def get_message_as_markdown(self):
return mark_safe(markdown(self.content, safe_mode='escape'))
class Meta:
unique_together = ('document', 'order')
ordering = ('document', 'order')
def __str__(self):
return self.title