我是Python的新手,也在探索SQLAlchemy.这是我的代码
class Test(Base):
__tablename__ = 'test'
__public__ = ('my_id', 'name')
my_id = Column(Integer, primary_key=True)
name = Column(String)
def __init__(self, id, name):
self.my_id = id
self.name = name
def __repr__(self):
return "<User('%d','%s')>" % (self.id, self.name)
@property
def json(self):
return to_json(self, self.__class__)
users= cess.query(Test.my_id, Test.name).order_by(Test.my_id).distinct().all()
for c in users:
print c.json
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误AttributeError: 'KeyedTuple' object has no attribute 'json',我做错了什么.
亲切的问候
你查询是
cess.query(Test.my_id, Test.name)
Run Code Online (Sandbox Code Playgroud)
所以你不会因此得到Test实例.这意味着您json的结果没有财产.相反,你得到KeyedTuple的是带有你要求的属性的元组,即my_id和name.要使其工作,您可以将查询更改为
cess.query(Test)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1934 次 |
| 最近记录: |