我正在使用邻接列表来创建一些类别和子类别。
class Category(db.Model):
id = db.Column(db.Integer, primary_key = True)
title = db.Column(db.String())
parent_id = db.Column(db.Integer, db.ForeignKey('categories.id'))
children = db.relationship("Category",
lazy="joined",
join_depth=2)
courses = db.relationship('Course',
backref='category',
lazy='dynamic')
类别模型与课程模型相关联。
class Course(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
category_id = db.Column(db.Integer, db.ForeignKey('categories.id'), nullable=False)
在我的路线上,我按照类别标题归还课程,如下所示:
@main_blueprint.route('/cursos/<string:category_title>')
def courses_by_category(category_title):
category = Category.query.filter_by(title=category_title).first_or_404()
courses = category.courses.all()
return render_template('main/coursesList.html',
category=category,
courses=courses
)
现在,我有点困惑如何配置到类似路线的路线
/ parent_category_title / children_category_title ->返回子类别中的所有课程
/ parent_category_title ->返回(数字插图和绘图)
任何想法都可以实现吗?有文档参考吗?