sqlalchemy не создает мой внешний ключ
-
10-07-2019 - |
Вопрос
Вопрос новичка по SqlAlchemy:
Base = declarative_base()
class A(Base):
__tablename__ = 'as'
id = Column(Integer, primary_key=True)
class B(Base):
__tablename__ = 'bs'
id = Column(Integer, primary_key=True)
a = relation(A)
Когда я создаю свою схему базы данных, у меня есть две таблицы, as и bs, которые имеют один столбец (id), но в таблице bs нет столбца a
, который указывает на A.
Что я могу делать не так? Моя база данных MySQL, если это имеет значение.
Решение
ratio ()
только сообщает мапперу, как связаны две таблицы. Вам все еще нужно добавить столбец с информацией о внешнем ключе. Например:
class B(Base):
__tablename__ = 'bs'
id = Column(Integer, primary_key=True)
a_id = Column(Integer, ForeignKey('as.id'), name="a")
a = relation(A)
Не связан с StackOverflow