gpt4 book ai didi

python - sqlalchemy.exc.InvalidRequestError : One or more mappers failed to initialize - can't proceed with initialization of other mappers 错误

转载 作者:行者123 更新时间:2023-11-28 17:08:24 28 4
gpt4 key购买 nike

当我尝试访问该页面时发生此错误。我在创建表时没有遇到错误,但似乎仍然存在问题。

模型是这样的:

class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(64), index=True, unique=True)
sell_items = db.relationship('Item', backref='user')

class Item(db.Model):
id = db.Column(db.Integer, primary_key=True)
item_name = db.Column(db.String(64), index=True)
item_image = db.Column(db.String(200), index=True)
price = db.Column(db.Float(10), index=True)
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user = db.relationship('User', backref='sell_items')

整个错误信息是这样的

Triggering mapper: 'Mapper|User|user'. Original exception was: Error creating backref 'user' on relationship 'User.sell_items': property of that name exists on mapper 'Mapper|Item|item'

我该如何解决这个问题?我想做的是引用销售该商品的 username,但我做不到。模型之间的关系存在问题。

最佳答案

当您使用 backref 时向后关系是自动创建的,所以它只能在关系的一侧使用。在您的情况下,您可以删除 sell_itemsUser模型和 User模型将自动从 Item 获取关系.

声明双方的关系(如果您想自定义其名称,例如,使用 back_populates='name_of_relationship_on_other_model'

关于python - sqlalchemy.exc.InvalidRequestError : One or more mappers failed to initialize - can't proceed with initialization of other mappers 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49504077/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com