Я использую сторону ORM SQLAlchemy, и я определил один из моих столбцов, чтобы иметь отношение внешнего ключа к другой модели, используя:
Base = declarative_base()
class Model1(Base):
__tablename__ = 'm1'
Name = Column(String, primary_key = True)
info = Column(String)
class Model2(Base):
__tablename__ = 'm2'
Name = Column(String, primary_key = True)
info = Column(String)
other_model = Column(String, ForeignKey('m1.Name'))
Однако, это не похожечто бы я ни указывал в атрибуте other_model
, кажется более чем счастливым зафиксировать его в базе данных, даже если не существует экземпляра Model1
с таким значением Name
.