簡體   English   中英

自動創建相關模型

[英]Automatically create the related model

使用SqlAlchemy,我定義了1-1關系:

class User(Base):
    id = Column(Integer, primary_key=True)

class Profile(Base):
    user_id = Column(Integer, ForeignKey(User.id), primary_key=True)
    name = Column(String)

我想強制執行該關系,以便在創建用戶時自動創建配置文件。

用SqlAlchemy做任何事情?

這樣的事情應該有效:

class User(Base):
    id = Column(Integer, primary_key=True)

    def __init__(self, name):
        prof = Profile(self, name)
        session.add(prof)
        session.commit()

class Profile(Base):
    user_id = Column(Integer, ForeignKey(User.did), primary_key=True)  # you have what I assume is a typo here User.did should probably be User.id
    name = Column(String)

    def __init__(self, user, name):
        user_id = user.id
        self.name = name 

這對我沒有任何錯誤。 如果您的session對象是在與您的類相同的文件中創建的。 如果不是,您可能會在導入時遇到問題,因為您可能會遇到循環導入問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM