Echo-Z/home/models.py

55 lines
2.0 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from django.db import models
import markdown
from mdeditor.fields import MDTextField
# Create your models here.
class ArticleTag(models.Model):
id = models.AutoField(primary_key=True)
tag = models.CharField(max_length=120)
def __str__(self):
return self.tag
class Meta:
verbose_name = "标签"
verbose_name_plural = "标签管理"
db_table = 'ArticleTag'
class Articles(models.Model):
title = models.CharField(max_length=100,verbose_name="文章标题")
content_raw = MDTextField(verbose_name='文章内容', default='', config_name='default')
content = models.TextField(verbose_name='呈现内容', null=True, blank=True, default='')
abstract = models.TextField(verbose_name="文章摘要")
author = models.TextField(default="admin", verbose_name="文章作者")
created = models.DateTimeField(verbose_name="发布时间")
stat = models.IntegerField(default=0,verbose_name="点赞数量")
read = models.IntegerField(default=0,verbose_name="阅读数量")
tag_id = models.ForeignKey(ArticleTag, on_delete=models.SET_NULL, null=True, blank=True, verbose_name="文章标签")
def save(self, *args, **kwargs):
# 将Markdown格式 转为html页面上显示
self.content = markdown.markdown(self.content_raw, extensions=[
'markdown.extensions.extra',
'markdown.extensions.codehilite',
'markdown.extensions.toc',
])
super(Articles, self).save(*args, **kwargs)
class Meta:
verbose_name = "文章"
verbose_name_plural = "文章管理"
db_table = "Articles"
def __str__(self):
return self.title
class ArticlesLike(models.Model):
articles_id = models.IntegerField(default=0,verbose_name="文章id")
uuid = models.CharField(max_length=100,verbose_name="点赞用户标识")
class Meta:
verbose_name = "点赞"
verbose_name_plural = "点赞管理"
db_table = "ArticlesLike"
def __str__(self):
return self.uuid