多対多の関係に関するSQLAlchemyのドキュメントをチェックしてください-それはあなたが探しているものを正確に実行するはずです。
したがって、とのモデルがある場合はUser
、Thing
関係に2次パラメーターを設定できます。
from sqlalchemy import Table, Integer, Column, ForeignKey
from sqlalchemy.orm import relationship, backref
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
association_table = Table('association', Base.metadata,
Column('user_id', Integer, ForeignKey('user.id')),
Column('thing_id', Integer, ForeignKey('thing.id'))
)
class User(Base):
__tablename__ = 'user'
# Whatever you need in this model
inventory = relationship('Thing', secondary = association_table, backref = 'users')
class Thing(Base):
__tablename__ = 'thing'
# Whatever you need in this model
次に、を呼び出すことにより、インスタンス化されThing
たに属するのリストにアクセスできます。User
george
george.inventory
お役に立てれば。
編集:あなたの質問を読み直して、あなたが使いたいと思ったことを確認しbackref
ました-それを行うためのコードを追加しました。
編集2:本当に重要な部分を省略しました。