小编Kur*_*lep的帖子

与SQLAlchemy在同一个表中的多对一关系

我有一个'客户'表,客户可以是另一个客户的孩子.

这是表定义.

[ClientID] [int] IDENTITY(1,1) NOT NULL,
[name] [varchar](50) NOT NULL,
[VPFSID] [varchar](50) NOT NULL,
[Type] [varchar](25) NULL,
[ROHostID] [varchar](60) NOT NULL,
[RWHostID] [varchar](60) NOT NULL,
[ParentClientID] [int] NULL
Run Code Online (Sandbox Code Playgroud)

在SQLAlchemy中,如何创建ParentClientID和ClientID之间的关系.我使用声明来组合这个类,但我不确定它是否有效.客户可以有很多孩子,但只能有一个父母,所以这是一个多对一的关系

class Client(Base):
    """ Client Filesystems """
    __tablename__ = 'Client'

    client_id = Column('ClientID', int, primary_key=True, nullable=Flase)
    name = Column('name', String(50), nullable=False)
    vpfs_id = Column('VPFSID', String(50), nullable=False)
    type = Column('Type',String(25))
    ro_host_id = Column('ROHostID', String(60), ForeignKey('DataMover.HostID'), nullable=False)
    rw_host_id = Column('RWHostID', String(60), ForeignKey('DataMover.HostID'), nullable=False)
    rw_host = relation('Datamover',backref="rw_clients")
    ro_host = relation('Datamover',backref="ro_clients")
    parent_client_id = Column('ParentClientID',int,ForeignKey('Client.ClientID'))
    parent …
Run Code Online (Sandbox Code Playgroud)

python sql sqlalchemy

5
推荐指数
1
解决办法
4572
查看次数

标签 统计

python ×1

sql ×1

sqlalchemy ×1