flask 的relationship使用

#一对多  学生是一   (一个学生有多本书)
class Student(db.Model):
__tablename__ = "student"
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(200))
age = db.Column(db.String(200))
gender = db.Column(db.String(200))
#设置relations
books = db.relationship("Book",backref = "students")
#一对多  书是多   (一个学生有多本书)
class Book(db.Model):
__tablename__ = "book"
id = db.Column(db.Integer,primary_key=True)
book_name = db.Column(db.String(200))
author = db.Column(db.String(200))
publish = db.Column(db.String(200))
price = db.Column(db.String(200))
types = db.Column(db.String(200))
pages = db.Column(db.String(200))
s_id = db.Column(db.Integer,db.ForeignKey(Student.id))

@app.route("/home")
def home():
#所有的学生
s_all = Student.query.all()
return render_template("hh.html",s_all=s_all)


<form action="">
<table border="1px">
<a href="{{url_for('insert')}}">新增</a>

{% for s in s_all%}
<!--        当前学生有哪些书籍   通过relationship-->
{% for b in s.books %}
<tr>
<td>{{s.name}}</td>
<td>{{b.book_name}}</td>
<td>{{b.author}}</td>
<td>{{b.publish}}</td>
<td>{{b.price}}</td>
<td>{{b.types}}</td>
<td>{{b.pages}}</td>
<td>{{s.id}}</td>
<td>{{b.s_id}}</td>
<td><a href="{{url_for('delete',id = b.id)}}">删除</a></td>
</tr>
{% endfor %}
{% endfor %}

</table>
</form>


原文地址:https://www.cnblogs.com/yuanjia8888/p/13816243.html