SQLalchemy:无法确定关系上 parent/child 表之间的连接条件
SQLalchemy: Could not determine join condition between parent/child tables on relationship
所以我在同一个 python 文件中有这两个简单的 类,我试图用 SQLAlchemy 进行映射,其中用户列 'password_id' 是 table密码'password_id'栏也是
from sqlalchemy.orm import relationship, declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy.sql.schema import ForeignKey
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
user_id = Column(Integer, primary_key=True)
name = Column(String)
email = Column(String)
password_id = Column(Integer, ForeignKey('password.password_id'))
parent = relationship("Password", back_populates="users")
class Password(Base):
__tablename__ = 'passwords'
password_id = Column(Integer, primary_key=True)
password = Column(String)
last_change_date = Column(DateTime)
valid_until = Column(DateTime)
child = relationship("User", back_populates="passwords", uselist=False)
这是上下文的数据库模式:
我正在关注 sql alchemy 的 this guide,但出于某种原因,我不断收到标题 '确保引用列与 ForeignKey 或 ForeignKeyConstraint 相关联的错误,或指定一个 'primaryjoin' 表达式。',这很奇怪,因为根据我在指南中看到的内容,我的 类 已正确映射,所以我不明白为什么会出现此错误正在发生。
提前致谢
我认为问题出在下一行(ForeignKey 中的 table 名称)...
password_id = Column(Integer, ForeignKey('password.password_id'))
应该是密码而不是密码。
所以我在同一个 python 文件中有这两个简单的 类,我试图用 SQLAlchemy 进行映射,其中用户列 'password_id' 是 table密码'password_id'栏也是
from sqlalchemy.orm import relationship, declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy.sql.schema import ForeignKey
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
user_id = Column(Integer, primary_key=True)
name = Column(String)
email = Column(String)
password_id = Column(Integer, ForeignKey('password.password_id'))
parent = relationship("Password", back_populates="users")
class Password(Base):
__tablename__ = 'passwords'
password_id = Column(Integer, primary_key=True)
password = Column(String)
last_change_date = Column(DateTime)
valid_until = Column(DateTime)
child = relationship("User", back_populates="passwords", uselist=False)
这是上下文的数据库模式:
我正在关注 sql alchemy 的 this guide,但出于某种原因,我不断收到标题 '确保引用列与 ForeignKey 或 ForeignKeyConstraint 相关联的错误,或指定一个 'primaryjoin' 表达式。',这很奇怪,因为根据我在指南中看到的内容,我的 类 已正确映射,所以我不明白为什么会出现此错误正在发生。
提前致谢
我认为问题出在下一行(ForeignKey 中的 table 名称)...
password_id = Column(Integer, ForeignKey('password.password_id'))
应该是密码而不是密码。