隐秘的炼金术模型到一个erd,但没有关系

2024-04-20 04:37:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试获取mysql数据库ERD,但是没有关系

这是我的Base和其中一个Models

class _Model(object):

    created_at = Column(DOUBLE, nullable=False, default=lambda: time.time())
    updated_at = Column(DOUBLE, nullable=False, default=lambda: time.time(), onupdate=lambda: time.time())
    deleted_at = Column(DOUBLE, nullable=False, default=lambda: time.time())
    deleted = Column(Boolean, default=False, index=True)

    def delete(self):
        self.deleted_at = time.time()
        self.deleted = True

Base = declarative_base(cls=_Model, name="Model")

class Broker(Base):
    __tablename__ = "broker"

    id = Column(String(255), primary_key=True, default=lambda: str(uuid4()))
    broker_id = Column(String(255), default=lambda: str(uuid4()))
    name = Column(String(255), nullable=False)
    url = Column(String(255), nullable=False)
    userName = Column(String(255), nullable=True)
    password = Column(String(255), nullable=True)
    token = Column(TEXT, nullable=True)
    available = Column(Boolean, nullable=True,default=lambda: True)
    syncStatus = Column(String(255), nullable=True, default=lambda: "unsync")
    zone_id = Column(String(255))
    zone = relationship(
        "AvailableZone",
        foreign_keys=[zone_id],
        primaryjoin="Broker.zone_id == AvailableZone.id",
        backref=backref("broker", lazy="dynamic")
    )

我有trid navicat和eralchemy,然后得到这个: enter image description here

为什么我得到的结果没有关系,这就是我想要的: enter image description here


Tags: lambdaidfalsetruedefaultzonebasestring