2
我有這個模型中的SQLAlchemy:SQLAlchemy的多態加載
class User(Base):
__tablename = 'users'
id = Column(Integer, primary_key=True, autoincrement=True)
type = Column(Text, nullable=False)
user_name = Column(Text, unique=True, nullable=False)
__mapper_args__ = {'polymorphic_on': type}
class Client(User):
__tablename__ = 'clients'
__mapper_args__ = {'polymorphic_identity': 'client'}
id = Column(Integer, ForeignKey('users.id'), primary_key=True)
client_notes = Column(Text)
這是一個連接表繼承。問題是,當我詢問用戶:
self.session.query(User).all()
我得到的是來自客戶端的記錄,而我要的是對用戶無客戶端的所有記錄。我該如何解決這個問題?
編輯:我使用SQLAlchemy的0.7.4和金字塔1.3a3
請注意,示例代碼中缺少''爲User' polymorphic_identity' configuraion。 – van 2012-01-05 17:03:06