这是我在 sqlalchemy 中使用的一些非常简单的代码,我在这里缺少一些关于类如何工作的基本内容。
class Game(Base):
__tablename__ = "games"
id = Column(Integer, primary_key=True)
a_name = Column(String)
def __init__(self, **kwargs):
for k, v in kwargs.iteritems():
setattr(self, k, v)
print 'hi'
self.away_dictionary = {'name': self.a_name}
@hybrid_property
def stuff(self):
return self.away_dictionary
以下查询有效:
session.query(Game).first().a_name
但以下查询返回错误:
session.query(Game).first().stuff
'Game' object has no attribute 'away_dictionary'
我还有一个更基本的问题,当我查询 Game 类时,它不会打印出“hi”。那么有人可以解释为什么每次我使用游戏实例时都没有打印出'hi'吗?第二个问题是如何为此类的每个实例构建和访问我想拥有的 away_dictionary?