我有完全相同的錯誤,我嘗試修改從我的數據庫獲取的sqlalchemy對象。 當我打印它時,我看到一個元組,檢查它是否不是。 我通過重構我的模型來解決問題,我想在我的關係上添加一些字段。 首先我:
assoc_host_software = Table("host_software", Base.metadata,
Column("host_id", Integer, ForeignKey("host.id")),
Column("software_id", Integer, ForeignKey("software.id")),
)
然後我嘗試
assoc_host_software = Table("host_software", Base.metadata,
Column("host_id", Integer, ForeignKey("host.id")),
Column("software_id", Integer, ForeignKey("software.id")),
Column("in_date",DateTime, unique=False, nullable=True),
Column("out_date",DateTime, unique=False, nullable=True)
)
當我得到assoc_host_software的對象,並嘗試更新他,我得到了同樣的錯誤,你得到的。 我明白了(記住),是不是從關係多對多 修改對象以正確的方式使 我我的模型轉換爲
class Host_Software(Base):
"""Model for relation host software."""
__tablename__ = 'host_software'
host_id = Column(Integer, ForeignKey("host.id"), primary_key=True)
software_id = Column(Integer, ForeignKey("software.id"), primary_key=True)
in_date = Column(DateTime, unique=False, nullable=True)
out_date = Column(DateTime, unique=False, nullable=False)
software = relationship("Software", backref="software_associations")
host = relationship("Host", backref="host_associations")
我希望這將有助於
代碼的工作,如果我降級SQLalchemy爲0.9 – user1501382
http://docs.sqlalchemy.org/en/rel_1_0/changelog/changelog_10.html – hjpotter92
@ hjpotter92我的確經歷了發行說明,但無法找到確切的功能/錯誤添加此行爲,我如何恢復舊的行爲。你能幫忙嗎? – user1501382