Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我在SQLAlchemy中的一对多关系有什么问题?_Python_Sqlalchemy_Flask Migrate - Fatal编程技术网

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

Python 我在SQLAlchemy中的一对多关系有什么问题?,python,sqlalchemy,flask-migrate,Python,Sqlalchemy,Flask Migrate,我有两个模型,它们之间有一对多的关系。对于许多参数,有一个辩论 我的辩论定义如下: class Debate(BaseModel): __tablename__ = "debates" title = db.Column( db.String(1000), nullable=False ) description = db.Column( db.String(10000), nullable

我有两个模型,它们之间有一对多的关系。对于许多
参数
,有一个
辩论

我的辩论定义如下:

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)
课堂辩论(基本模式):
__tablename=“辩论”
title=db.Column(
db.字符串(1000),
nullable=False
)
description=db.Column(
db.字符串(10000),
可为空=真
)
creator\u id=db.Column(
db.Integer,
db.ForeignKey(“users.id”),
nullable=False
)
社区id=db.Column(
db.Integer,
db.ForeignKey(“communities.id”),
nullable=False
)
参数=db.relationship(
“论点”,
backref=“辩论”
)
定义报告(自我):
返回“”格式(self.title)
我的论点定义如下:

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)
类参数(BaseModel):
__tablename_=“arguments”
title=db.Column(
db.字符串(1000),
nullable=False
)
content=db.Column(
db.字符串(1000000),
nullable=False
)
用户id=db.Column(
db.Integer,
db.ForeignKey('users.id'),
nullable=False
)
辩论id=db.Column(
db.Integer,
db.ForeignKey('discussions.id'),
nullable=False
)
定义报告(自我):
返回“”格式(self.title)

我没有得到任何实际的错误。当我尝试使用flask migrate迁移我的应用程序时,它会说
未检测到模式更改
,即使我更改了关系(我不知道这是否正常)。我已删除了我的迁移目录,并重试了相同的结果。当我从DB中选择我的辩论时,它返回时没有参数值


我一直在尝试各种不同的配置和设置,我一直在阅读文档,我只是看不出这个设置有什么问题。我肯定我少了一些小东西。你能告诉我我的定义有什么问题吗?

有什么问题吗?您是否收到错误?抱歉,我在中添加了错误描述。“即使我更改了关系(我不知道这是否正常)”,这也是正常的。关系在对象关系映射的对象端工作,因此对其进行更改不需要对数据库进行任何更改。请提供一个包含如何添加和查询数据的示例的示例。@IljaEverilä在试图创建一个可复制的示例时,我在这个问题上遇到了障碍。我使用flask_marshmallow为我进行编组,并对该视图的
参数
值使用了一个旧名称。以前它们被称为
posts