【发布时间】:2021-12-11 11:39:05
【问题描述】:
我是 Sqlalchemy 的新手。我有 2 个对象用户和产品。我想在他们之间建立关系。
from sqlalchemy import Column, String, Boolean, create_engine, ForeignKey, PrimaryKeyConstraint
from sqlalchemy.orm import relationship
class User():
__tablename__ = 'user'
username= Column(String, primary_key = True)
random_string = Column(String)
class Product():
__tablename__ = 'product'
username= Column(String, ForeignKey('user.username'))
productname = Column(String)
status = Column(Boolean)
usr = relationship("User", back_populates="product")
Base.metadata.create_all(engine)
但我收到错误 sqlalchemy.exc.ProgrammingError: (psycopg2.errors.InvalidForeignKey) there is no unique constraint matching given keys for referenced table "user".
如果我删除关系,它会起作用,但这不是我的目的。 我该如何解决?我想问为什么我们应该使用关系?
【问题讨论】:
标签: python postgresql sqlalchemy orm fastapi