如何使用 Flask-SQLAlchemy 更新行?

Ole*_*leg -1 python sqlalchemy

我有一个模型:

class Announcements(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(150), nullable=False)
    text = db.Column(db.Text(), nullable=False)
    category = db.Column(db.Integer(), nullable=False)
    subcategory = db.Column(db.Integer(), nullable=False)
    offer_type = db.Column(db.Integer(), nullable=False)
    url = db.Column(db.String(150), nullable=True)
    status = db.Column(db.Integer(), nullable=False)

    def __repr__(self):
        return '<Announcement %r>' % self.name
Run Code Online (Sandbox Code Playgroud)

和公共功能:

def update(id):
   // UPDATE HERE
Run Code Online (Sandbox Code Playgroud)

如何使用 Flask-SQLAlchemy通过传入id的函数更新注释update()

我在文档中没有看到任何更新行的示例

Rob*_*zak 7

首先得到你需要的物品。

item = Announcements.query.get(id)
Run Code Online (Sandbox Code Playgroud)

然后您直接编辑该项目:

item.name = "Newname"
Run Code Online (Sandbox Code Playgroud)

然后你提交会话:

db.session.commit()
Run Code Online (Sandbox Code Playgroud)