SQLAlchemy circular relación uno a uno
Estoy tratando de hacer una relación circular de uno a uno (no estoy seguro de cuál es el término correcto) con SQLAlchemy que se ve de la siguiente manera:
class Parent(Base):
__tablename__ = 'parents'
id = db.Column(Integer, primary_key=True)
child_id = db.Column(db.Integer,db.ForeignKey("children.id", use_alter=True))
child = db.relationship("Child",
uselist=False,
foreign_keys=[child_id],
post_update=True)
class Child(Base):
__tablename__ = 'children'
id = db.Column(db.Integer, primary_key=True)
parent_id = db.Column(db.Integer, db.ForeignKey("parents.id"))
user = db.relationship("Parent",
uselist=False,
foreign_keys=[parent_id])
Todo funciona como se espera hasta que intentodb.drop_all()
y me sale un error que elsqlalchemy.sql.schema.ForeignKeyConstraint
name
esNone
. ¿Estoy haciendo algo mal cuando trato de hacer esta relación circular de uno a uno? Realmente me gustaría poder consultar solo una columna para obtener la identificación de la otra, de ahí la referencia circular.