抽屉数据库设计示例

from django.db import models

# Create your models here.
#临时表
class SendMsg(models.Model):
nid = models.AutoField(primary_key=True)
code = models.CharField(max_length=6)
email = models.CharField(max_length=32, db_index=True)
times = models.IntegerField(default=0)
ctime = models.DateTimeField()
#用户表
class UserInfo(models.Model):
nid = models.AutoField(primary_key=True)
username = models.CharField(max_length=32, unique=True)
password = models.CharField(max_length=32)
email = models.CharField(max_length=32, unique=True)
ctime = models.DateTimeField()
#新闻类型表,可以不用建该表
# class NewsType(models.Model):
# caption = models.CharField(max_length=16)
#新闻表
class News(models.Model):
title = models.CharField(max_length=64)
summary = models.CharField(max_length=128, null=True)#评论
url = models.URLField(null=True)
ctime = models.DateTimeField(auto_now_add=True)
favor_count=models.IntegerField(default=0)#点赞个数
comment_count=models.IntegerField(default=0)#评论个数
user = models.ForeignKey(to='UserInfo', to_field='nid', related_name='n')
news_type_choices = [
(1, '42区'),
(2, '段子'),
(3, '图片'),
(4, '挨踢1024'),
(5, '你问我答'),
]
nt = models.IntegerField(choices=news_type_choices)#新闻类型
# nt = models.ForeignKey(to='NewsType', to_field='id', related_name='tn')
favor=models.ManyToManyField(to='UserInfo')
#点赞表,可以直接建在新闻表里
# class Favor(models.Model):
# user = models.ForeignKey(to='UserInfo', to_field='nid')
# news = models.ForeignKey(to='News', to_field='id')
#评论表
class Comment(models.Model):
user = models.ForeignKey(to='UserInfo', to_field='nid')
news = models.ForeignKey(to='News', to_field='id')
content = models.CharField(max_length=150)#评论内容
device = models.CharField(max_length=16,null=True)#用户设备信息
ctime = models.DateTimeField(auto_now_add=True)#点赞时间
parent_comment = models.ForeignKey(to='self',null=True,related_name='cp')#父评论,用于用户间回复评论

转载于:https://www.cnblogs.com/lbzbky/p/11019713.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值