首页 > 其他 > 详细

BBS 博客系统

时间:2019-02-28 11:17:03      阅读:136      评论:0      收藏:0      [点我收藏+]
技术分享图片
from django.db import models

# Create your models here.
from django.contrib.auth.models import AbstractUser

class UserInfo(AbstractUser):

    ‘‘‘
    用户表
    ‘‘‘
    nid = models.AutoField(primary_key=True)
    telephone = models.CharField(max_length=11, null=True, unique=True)
    avatar = models.FileField(upload_to=avatars/, default=avatars/default.png)
    create_time = models.DateTimeField(verbose_name=创建时间,auto_now_add=True)
    blog = models.OneToOneField(to=Blog, to_field=nid, null=True, on_delete=True)


class Blog(models.Model):
    ‘‘‘
    博客信息表(站点表)
    ‘‘‘
    nid = models.AutoField(primary_key=True)
    title = models.CharField(max_length=64, verbose_name=个人博客标题)
    site_name = models.CharField(max_length=64, verbose_name=站点名称)
    theme = models.CharField(max_length=64, verbose_name=博客主题)


class Categroy(models.Model):
    ‘‘‘
    博客个人文章分类
    ‘‘‘
    nid = models.AutoField(primary_key=True)
    title = models.CharField(max_length=32, verbose_name=分类标题)
    blog = models.ForeignKey(to=Blog, to_field=nid, verbose_name=所属博客, on_delete=True)


class Tag(models.Model):
    ‘‘‘
    博客个人标签表
    ‘‘‘
    nid = models.AutoField(primary_key=True)
    title = models.CharField(max_length=32, verbose_name=标签名称)
    blog = models.ForeignKey(to=Blog, to_field=nid, verbose_name=所属博客, on_delete=True)


class Article(models.Model):
    ‘‘‘
    文章表
    ‘‘‘
    nid = models.AutoField(primary_key=True)
    title = models.CharField(max_length=60,verbose_name=文章标题)
    create_time = models.DateTimeField(verbose_name=创建时间, auto_now_add=True)
    comment_count = models.IntegerField(default=0)
    up_count = models.IntegerField(default=0)
    down_count = models.IntegerField(default=0)
    user = models.ForeignKey(verbose_name=作者, to_field=nid, to=UserInfo, on_delete=True)
    categroy = models.ForeignKey(to=Categroy, to_field=nid, on_delete=True)
    tag = models.ManyToManyField(to=Tag, through=Article2Tag, through_fields=(article, tag),)


class Article2Tag(models.Model):
    nid = models.AutoField(primary_key=True)
    article = models.ForeignKey(verbose_name=文章, to=Article, to_field=nid, on_delete=models.CASCADE)
    tag = models.ForeignKey(verbose_name=标签, to=Tag, to_field=nid, on_delete=models.CASCADE)
    class Meta:
        unique_together = [
            (article, tag),
        ]


class ArticleUpDown(models.Model):

    nid = models.AutoField(primary_key=True)
    user = models.ForeignKey(to=UserInfo, null=True, on_delete=models.CASCADE)
    article = models.ForeignKey(to=Article, on_delete=models.CASCADE)
    is_up = models.BooleanField(default=True)
    class Meta:
        unique_together = [
            (article, user),
        ]


class Comment(models.Model):
    nid = models.AutoField(primary_key=True)
    user = models.ForeignKey(verbose_name=评论者, to=UserInfo, to_field=nid, on_delete=models.CASCADE)
    article = models.ForeignKey(verbose_name=文章评论, to=Article,to_field=nid, on_delete=models.CASCADE)
    content = models.CharField(verbose_name=评论内容, max_length=200)
    create_time = models.DateTimeField(verbose_name=创建时间, auto_now_add=True)
    parent_comment = models.ForeignKey(self, null=True, on_delete=models.CASCADE)
View Code

 

BBS 博客系统

原文:https://www.cnblogs.com/ApolloZ/p/10449026.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!