SQLAlchemy 查询返回内存地址而不是对象

时间:2021-06-02 19:36:23

标签: python sqlalchemy

我正在尝试学习 SQLAlchemy 1.4.x 并遵循基本的 tutorial。我想知道为什么我的查询似乎返回内存地址而不是对象本身。我的代码基本上是 tuorial 1:1 的:

import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy import Column, Integer, String
from sqlalchemy.orm import declarative_base, sessionmaker

engine = create_engine('sqlite:///:memory:', echo=True)

Base = declarative_base()
class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True, autoincrement=True)
    name = Column(String)
    fullname = Column(String)

Base.metadata.create_all(engine)
ed_user = User(name='ed', fullname='eduardo')
Session = sessionmaker(bind=engine)
session = Session()
session.add(ed_user)
our_user = session.query(User).filter_by(name='ed').first()

这让我着迷

>>>> our_user
<__main__.User at 0x10c4ef9a0>

而根据教程,我应该得到

>>>> our_user
<User(name='ed', fullname='eduardo', id=1)>

似乎我得到的东西使我的表的检查和调试变得更加困难。我在这里做错了什么吗?

0 个答案:

没有答案