Я пытаюсь создать набор таблиц, которым можно назначить Contact
.
class Contact(Base):
__tablename__ = "contact"
id = Column(Integer, primary_key=True)
name = Column(String, index=True, nullable=False, doc="Name of the contact.")
phone = Column(String, index=True, doc="Phone number of the contact.")
Контакты могут быть связаны с различными другими таблицами, и одна запись может иметь большечем один контакт в разных областях.
class BusinessGroup(Base):
__tablename__ = "business_group"
id = Column(Integer, primary_key=True)
name = Column(String, index=True, nullable=False, doc="Name of the group.")
main_contact = Column(Integer, ForeignKey("contact.id"), doc="Main contact details for the group.")
second_contact = Column(Integer, ForeignKey("contact.id"), doc="Second contact details for the group.")
class Vendor(Base):
__tablename__ = "vendor"
id = Column(Integer, primary_key=True)
name = Column(String, index=True, nullable=False, doc="Name of the vendor.")
contact = Column(Integer, ForeignKey("contact.id"), doc="Main contact details for the vendor.")
Эта настройка работает, но в flask-admin
поля контактов не отображаются при создании нового элемента для BusinessGroup
или Vendor
.
Как я могу заставить этот дизайн работать?Или я должен моделировать такие отношения совсем по-другому?