我在SQLAlchemy中的一对多关系有什么问题?

时间:2019-11-06 02:49:58

标签: python sqlalchemy flask-migrate

我有2个模型,它们之间存在1对多的关系。每个Debate中有一个Arguments

我的辩论定义为:

class Debate(BaseModel):
    __tablename__ = "debates"

    title = db.Column(
        db.String(1000),
        nullable=False
        )
    description = db.Column(
        db.String(10000),
        nullable=True
    )
    creator_id = db.Column(
        db.Integer,
        db.ForeignKey("users.id"),
        nullable=False
        )
    community_id = db.Column(
        db.Integer,
        db.ForeignKey("communities.id"),
        nullable=False
        )
    arguments = db.relationship(
        "Argument",
        backref="debates"
    )

    def __repr__(self):
        return "<Debate: {0}>".format(self.title)

我的论点定义为:

class Argument(BaseModel):
    __tablename__ = "arguments"

    title = db.Column(
        db.String(1000),
        nullable=False
        )
    content = db.Column(
        db.String(1000000),
        nullable=False
        )
    user_id = db.Column(
        db.Integer,
        db.ForeignKey('users.id'),
        nullable=False
        )
    debate_id = db.Column(
        db.Integer,
        db.ForeignKey('debates.id'),
        nullable=False
        )

    def __repr__(self):
        return "<Argument: {0}>".format(self.title)

我没有任何实际错误。当我尝试使用flask-migrate迁移应用程序时,即使更改了关系,它也会显示No changes in schema detected(我不知道这是否正常)。我已经删除了迁移目录,并尝试了相同的结果。当我从数据库中选择我的辩论时,它只是返回而没有“参数”值。

我一直在尝试各种不同的配置和设置,并且正在阅读文档,但看不到此设置有什么问题。我确定这是我所缺少的小东西。您能告诉我我的定义有什么问题吗?

0 个答案:

没有答案