Тогда вы можете Parent.child или Child.parent весь день
аюсь создать циклическое отношение один-к-одному (не уверен, что правильный термин) с SQLAlchemy, который выглядит следующим образом:
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])
Все работает как положено, пока не попробуюdb.drop_all()
и я получаю ошибку, чтоsqlalchemy.sql.schema.ForeignKeyConstraint
name
являетсяNone
, Я делаю что-то не так, когда пытаюсь сделать круговые отношения один на один? Мне бы очень хотелось иметь возможность запросить только один столбец, чтобы получить идентификатор другого, отсюда и циклическую ссылку.