Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.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 - Fatal编程技术网

Python SQLAlchemy删除持久性错误

Python SQLAlchemy删除持久性错误,python,sqlalchemy,Python,Sqlalchemy,出于某种原因,下面的代码正在生成持久性错误: '<Data at 0x1041db8d0>' is not persisted 非常感谢。输入的数据=数据(notes=form3.dbDelete.data) 这将创建数据的新实例(或行)。然后您正在运行一个会话。delete过程将其从数据库中删除,但它从未被插入(例如,通过session.commit()) 我猜这就是你想要做的: try: data_entered = db.session.query(Data).fil

出于某种原因,下面的代码正在生成持久性错误:

'<Data at 0x1041db8d0>' is not persisted
非常感谢。

输入的数据=数据(notes=form3.dbDelete.data)

这将创建
数据的新实例(或行)
。然后您正在运行一个
会话。delete
过程将其从数据库中删除,但它从未被插入(例如,通过
session.commit()

我猜这就是你想要做的:

try:
    data_entered = db.session.query(Data).filter(Data.notes == form3.dbDelete.data).one()
except sqlalchemy.orm.exc.NoResultFound:
    pass
else:
    try:
        db.session.delete(data_entered)
        db.session.commit()
        db.session.close()
        return render_template('deleted.html', notes=form3.dbDelete.data)
try:
    data_entered = db.session.query(Data).filter(Data.notes == form3.dbDelete.data).one()
except sqlalchemy.orm.exc.NoResultFound:
    pass
else:
    try:
        db.session.delete(data_entered)
        db.session.commit()
        db.session.close()
        return render_template('deleted.html', notes=form3.dbDelete.data)