Files

49 lines
1.7 KiB
Python

"""模块:Doc 数据模型
社区文档与系列管理表。"""
from gvsds.model_base import QModel
import datetime
from django.db import models
from gvsds.apps.core.models import UUIDField
class CommunityDocument(QModel):
"""社区文档表——文档内容管理
DocSerieUUID 为可空 UUIDField(非 FK):系列仅是逻辑分组,
避免 FK + to_field 导致列名(DocSerieUUID_id)与迁移不一致的坑。
"""
DocUUID = UUIDField(primary_key=True, verbose_name='文档UUID')
DocSerieUUID = UUIDField(null=True, blank=True, verbose_name='所属系列UUID')
DocTitle = models.CharField(max_length=256, verbose_name='文档标题')
DocContent = models.TextField(verbose_name='文档内容')
DocFormat = models.CharField(
max_length=16,
default='markdown',
choices=(('markdown', 'Markdown'), ('html', '富文本 HTML')),
verbose_name='内容格式',
)
DocCreateTime = models.DateTimeField(default=datetime.datetime.utcnow, verbose_name='文档创建时间')
class Meta:
db_table = 'Document'
app_label = 'doc'
verbose_name = '社区文档'
verbose_name_plural = '社区文档'
class CommunitySeries(QModel):
"""社区系列表——文档集合管理"""
DocSerieUUID = UUIDField(primary_key=True, verbose_name='系列UUID')
DocSerieName = models.CharField(max_length=256, verbose_name='系列名称')
DocAuthorUserUUID = UUIDField(verbose_name='作者用户UUID')
DocSerieCreateTime = models.DateTimeField(default=datetime.datetime.utcnow, verbose_name='系列创建时间')
class Meta:
db_table = 'Series'
app_label = 'doc'
verbose_name = '社区系列'
verbose_name_plural = '社区系列'