#关联表
followers = db.Table('followers', db.Column('follower_id', db.Integer, db.ForeignKey('user.id')), db.Column('followed_id', db.Integer, db.ForeignKey('user.id')) )
Post.query.join(...).filter(...).order_by(...)
用户表User
id | username |
---|---|
1 | john |
2 | susan |
3 | mary |
4 | david |
关系表followers(当john关注susan和david时)
follower_id | followed_id |
---|---|
1 | 2 |
1 | 4 |
2 | 3 |
3 | 4 |
帖子表posts
id | text | user_id |
---|---|---|
1 | post from susan | 2 |
2 | post from mary | 3 |
3 | post from david | 4 |
4 | post from john | 1 |
Post.query.join(followers, (followers.c.followed_id == Post.user_id))