0

SQLiteデータベースを取得するために使用する次のget_db()関数があります。

def get_db():
    top = _app_ctx_stack.top
    if not hasattr(top, 'sqlite_db'):
        top.sqlite_db = sqlite3.connect(app.config['DATABASE'])
    return top.sqlite_db

ここではPythonSQLiteカーソルを使用していないと思います。私が次のことをした場合:

db = get_db()
db.execute('DELETE FROM table_name WHERE id=3')
db.commit()

DELETEで渡されたIDが存在するかどうかを確認するにはどうすればよいですか?sqlite3.Cursorでrowcountを使用しようとしましたが、ここでデータベースを取得する方法では機能しません。

どうすれば確認できますか?渡されたIDが存在しない場合は404を返す必要があります。

ありがとう

4

1 に答える 1

1

最初にIDを照会し、存在しない場合は404をスローしないのはなぜですか。何かのようなもの:

cur = g.db.query('select * from table_name where id=3')
if cur.rowcount <= 0:
*    abort(404)
''Run delete command here''
于 2012-11-15T18:03:10.157 に答える