[英]Relationship across a many-to-many table
我想跨多對多表創建一個關系,一個User
具有一個Roles
,該Roles
具有一個Project
。 我希望User
中與其Roles
相關的所有Projects
都具有一種關系。 我用primaryjoin
和secondaryjoin
嘗試了很多,但是我沒有用。
這是我的模型:
roles_users = db.Table('roles_users',
db.Column('role_id', db.Integer, db.ForeignKey('role.id')),
db.Column('user_id', db.Integer, db.ForeignKey('user.id')),
db.PrimaryKeyConstraint('role_id', 'user_id')
)
class User(db.Model, UserMixin):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.Unicode(80), unique=True, nullable=False)
roles = db.relationship('Role', secondary=roles_users, backref='users')
projects = db.relationship('Project' ???? )
class Role(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(80), unique=True, nullable=False)
project_id = db.Column(db.Integer, db.ForeignKey('project.id'), nullable=False)
class Project(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(80), nullable=False)
roles = db.relationship('Role', backref='project')
問題出在您的“參考”中。 我為您提供了以下鏈接,這些鏈接將幫助您了解約束和關系。
http://docs.sqlalchemy.org/en/rel_0_9/orm/relationships.html#many-to-many
這是我最適合關聯的鏈接。
http://docs.sqlalchemy.org/en/rel_0_9/orm/relationships.html#association-object
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.