我是SQLAlchemy和Python的新手,我试图在Tkinter Button回调中实例化一个sqlalchemy对象。这是代码:
class Test(Base):
__tablename__ = "Tests"
id = Column(Integer, primary_key = True)
TestName = Column(String)
def __init__(self, TestName):
self.TestName = TestName
SaveTestButton = Button(master, text="Save to database", command=saveTest, fg="green", bg="white", font="Helvetica 10 bold")
NewTestEntry = Entry(master, text="", width = 100)
def saveTest():
NewTestName = NewTestEntry.get()
T = Test(NewTestName)
session.add(T)
session.commit()
我收到以下错误:
T = Test("NewTestName")
TypeError: 'NoneType' object is not callable
似乎无法识别回调中的sqlalchemy“Test”类。我试过从tk外部调用saveTest函数来实例化一个Test类,它可以工作。我还在回调中实例化了其他类(不是基于sqlalchemy的),所以它似乎很奇怪它不会工作。必须有办法做到这一点...任何评论将不胜感激。 -Daniel W。