many-many
我在用户和拍卖之间有一张名为placedBids
.
我正在从拍卖中查询,所以我placedBids
也调用了 backref,placedbids
所以我可以从拍卖中访问它,然后我可以得到例如已userid
放置的出价,但我真的想要它,所以我在和调用username
之间的关系中创建了一个 backref (这个我改变了,因为已经有另一个名为 的 backref ,尽管可能存在一些问题)尝试这样做,我是新手,我尝试了很多事情,甚至在backref 中急切加载也无济于事。user
placedbids
userbids
users
sqlalchemy
userbids
这是我的最后一个查询:
auction = dbsession.query(Auction.id, Auction.endTime, Auction.currentPrice, Product.description, Product.title, User.username, PlacedBids.timeplaced, PlacedBids.userbids.username).outerjoin(Auction.placedbids).join(Auction.products).outerjoin(Auction.leader).filter( Auction.id == request.matchdict['id']).all()
错误:
2012-05-18T16:40:36+00:00 app[web.1]:AttributeError:“InstrumentedAttri bute”对象和“比较器”对象都没有属性“用户名”
我也尝试过加入喜欢outerjoin(Auction.placedbids.userbids)
或PlacedBids.userbids
等等......
我没有太多经验sqlalchemy
,我可以做一个额外的查询来获得username
我user_id
可以毫无问题地获得,但我想知道如何在没有它的情况下进行。