1 from db import db
2
3 # 用户信息
4 class User(db.Model):
5 __tablename__ = 'user'
6 id = db.Column(db.String(17), primary_key=True) # 数据库唯识别id
7 name = db.Column(db.String(20), nullable=False) # 登录账号名
8 title = db.Column(db.String(30)) # 显示名称
9 password = db.Column(db.String(42), nullable=False) # 密码
10 truename = db.Column(db.String(10)) # 真实姓名
11 sex = db.Column(db.String(1), default='0') # 性别
12 phone = db.Column(db.String(11)) # 电话号码
13 email = db.Column(db.String(40)) # 邮箱
14 logo = db.Column(db.String(50)) # 头像
15 qq = db.Column(db.String(11)) # qq号码
16 createdate = db.Column(db.DATETIME) # 注册日期
17 level = db.Column(db.String(2)) # 用户等级
18 address = db.Column(db.String(60)) # 用户住址
19
20 # 图书分类 classification(id,name,content)
21 class Classification(db.Model):
22 __tablname__ = 'classification'
23 id = db.Column(db.String(17), primary_key=True) # 数据库唯识别id
24 name = db.Column(db.String(30)) # 文章名称
25 logo = db.Column(db.String(50)) # 头像地址
26 context = db.Column(db.TEXT) # 分类内容
27
28 # book(id,title,abstracts,content,createdate,author_id,size,chilk,disc,classification)
29 # 发布图书及问答
30 class Book(db.Model):
31 __tablname__ = 'book'
32 id = db.Column(db.String(17), primary_key=True) # 数据库唯识别id
33 title = db.Column(db.String(30)) # 文章标题
34 abstracts = db.Column(db.String(150)) # 文章摘要
35 content = db.Column(db.TEXT) # 文章内容
36 createdate = db.Column(db.DATETIME) # 发布时间
37 author_id = db.Column(db.String(17), db.ForeignKey('user.id')) # 发布者id
38 size = db.Column(db.String(30)) # 文章长度
39 chilk = db.Column(db.Integer()) # 阅读数
40 disc = db.Column(db.Integer()) #点赞数
41 classification = db.Column(db.String(17), db.ForeignKey('classification.id')) # 文章分类id
42 authorClass = db.relationship('User', backref=db.backref('book'))
43 classificationClass = db.relationship('Classification', backref=db.backref('book'))
44
45 # 评论表
46 class Commentaries(db.Model):
47 __tablname__ = 'commentaries'
48 id = db.Column(db.String(17), primary_key=True) # 数据库唯一识别id
49 book_id = db.Column(db.String(17), db.ForeignKey('book.id')) # 评论对应的文章的id
50 question_id = db.Column(db.String(17)) # 问题的提出者id,或者是文章作者id
51 answer_id = db.Column(db.String(17), db.ForeignKey('user.id')) # 回答问题用户的id
52 date = db.Column(db.DATETIME) # 回答日期
53 content = db.Column(db.TEXT) # 回答内容
54 answer = db.relationship('User', backref=db.backref('commentaries'))
55 book = db.relationship('Book', backref=db.backref('commentaries',order_by=date.desc))