我是 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“测试”类。我尝试从 tk 外部调用 saveTest 函数来实例化一个 Test 类,它可以工作。我还在回调中实例化了其他类(不是基于 sqlalchemy),所以它不起作用似乎真的很奇怪。必须有办法做到这一点......任何意见将不胜感激。——丹尼尔·W。