【发布时间】:2019-04-09 11:09:42
【问题描述】:
大家好!
我正在使用烧瓶制作一个网站,老师可以在其中发布家庭作业文件,学生可以在帖子上发表评论,并附上解决方案文件。但我坚持建立作业文件和解决方案文件之间的关系。
这是我的模型文件:
from blog import login
from blog import db
from datetime import datetime
from flask_login import UserMixin
@login.user_loader
def load_user(id):
return User.query.get(int(id))
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
access_level = db.Column(db.Integer)
username = db.Column(db.String(64), index=True, unique=True)
password = db.Column(db.String(128))
fullname = db.Column(db.String(128), index=True)
email = db.Column(db.String(120), index=True, unique=True)
phone_number = db.Column(db.String(10), index=True, unique=True)
homework = db.relationship("HomeWork", backref="author",
lazy="dynamic")
answer = db.relationship("Solution", backref="author",
lazy="dynamic")
def __repr__(self):
return "<User {}>".format(self.username)
def check_password(self, password):
return self.password == password
def is_teacher(self):
return self.access_level == 1
class HomeWork(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(32))
data = db.Column(db.LargeBinary)
timestamp = db.Column(db.DateTime, index=True,
default=datetime.now)
user_id = db.Column(db.Integer, db.ForeignKey("user.id"))
class Solution(db.Model):
id = db.Column(db.Integer, primary_key=True)
timestamp = db.Column(db.DateTime, index=True,
default=datetime.now)
data = db.Column(db.LargeBinary)
我想将作业文件保存到数据库中,以便学生查看并发布每个作业的解决方案。当有人进入家庭作业页面时,它会在主帖中显示家庭作业文件,并且学生的 cmets 会包含他们的家庭作业解决方案文件
请帮我解决这个问题!
非常感谢!
【问题讨论】:
-
你怎么卡住了?
-
@IljaEverilä 我想将作业文件保存到数据库中,以便学生可以查看并发布每个作业的解决方案。当有人进入家庭作业页面时,它会在主帖中显示家庭作业文件,并且学生的 cmets 会包含他们的家庭作业解决方案文件
标签: python sqlalchemy relationship