session.add(self) 不将记录添加到数据库



这里的新手总数。 试图使用sqlalchemy,但遇到了一个问题。

class Establishment(Base):
__tablename__ = 'establishments'
estaID = Column(String(5), primary_key=True)
typeID = Column(String(2), ForeignKey('types.typeID'))
type = relationship("Type", backref=backref('estabs', order_by=estaID))
def __init__(self, id):
    self.estaID = id
    try:
        session = Session()
        existsEsta = session.query(Establishment).filter(Establishment.estaID == self.estaID).one()
        session.close()
        self.typeID = existsEsta.typeID
    except NoResultFound, e:
        session = Session()
        print "Establishment: ", self.estaID, "does not yet exist."
        type = Type(raw_input("Please enter type: "))
        self.typeID = type.gettypeID()
        print "Adding establishment", self.estaID, self.typeID
        session.add(self)
        session.commit

由于某种原因,session.add(self) 没有将记录添加到数据库中。 我特别难以弄清楚发生了什么,因为这个"建立"类是以另一个类(相同的算法,不同的变量名称)建模的,它工作得很好。

关于我在这里出错的地方的想法?

提前谢谢。

尝试session.commit()而不是session.commit

最新更新