假设在我的 < code> user. py code> 模块中有这个 User code > 模块。 我将使用这个 < code> User code > 作为更大应用程序的一部分。 我会在主应用程序模块中配置 < code> Engine
(数据库连接) 。 但是...
如果 User.foo
要求使用 Engine
或 session
?例如,我在数据库中有一个函数,需要用户身份,我想在 foo
中调用该函数。要这样做,我需要使用 Engine.execut
或 session.execute
;但 Engine
或
或
s > Say
尚未创建。
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
Base = declarative_base()
class User(Base):
__tablename__ = users
id = Column(Integer, primary_key=True)
name = Column(String)
fullname = Column(String)
password = Column(String)
def __init__(self, name, fullname, password):
self.name = name
self.fullname = fullname
self.password = password
def foo(self, bar):
"""I need an Engine or Session!"""
pass #....
def __repr__(self):
return "<User( %s , %s , %s )>" % (self.name, self.fullname, self.password)