我有以下两个班级。我想要做的是让我的curriculum.name字段始终出现在我对curriculumareaoflearning的查询中
class Curriculum(db.Model, SerializableModel):
__tablename__ = "curriculum"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(300), nullable=False)
iscurrent = db.Column(db.Boolean, nullable=False)
notes = db.Column(db.Text)
areasoflearning = db.relationship('CurriculumAreaOfLearning', lazy='dynamic')
class CurriculumAreaOfLearning(db.Model, SerializableModel):
__tablename__ = "curriculumareaoflearning"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(300), nullable=False)
curriculumid = db.Column(db.Integer, db.ForeignKey('curriculum.id'), nullable=False)
curriculum = db.relationship('Curriculum', lazy='joined')
我尝试了以下查询。我的查询中没有我的课程属性
db.session.query(CurriculumAreaOfLearning).join(models.Curriculum, models.CurriculumAreaOfLearning.curriculumid == models.Curriculum.id)
我尝试了以下查询。我收到错误
db.session.query(CurriculumAreaOfLearning).join(models.Curriculum, models.CurriculumAreaOfLearning.curriculumid == models.Curriculum.id).add_columns(model.Curriculum.name)
AttributeError:类型对象'CurriculumAreaOfLearninig'没有属性'Curriculum'
答案 0 :(得分:0)
试试这个:
db.session.query(CurriculumAreaOfLearning, Curriculum)
.join(Curriculum, Curriculum.id == CurriculumAreaOfLearning.curriculumid).all()