Итак, я начал следовать примеру фласка, и я получил все, чтобы работать правильно. Я начал работать над удалением сообщений, добавленных с помощью метода entry.id, но когда я пытаюсь удалить сообщения, я получаю сообщение об ошибке 500:Flaskr Удалить сообщения (пример flaskr)
Объект '' _AppCtxGlobals не имеет атрибута 'db' '
Сначала я удалил глобальную область видимости, но это привело к той же ошибке.
Это мои маршруты.
'/' маршрут
@app.route('/')
def show_entries():
db = get_db()
cur = db.execute('select title, text, id from entries order by id desc')
entries = [{"title" : row[0], "text" : row[1], "id" : row[2]} for row in cur.fetchall()]
Удалить маршрут
@app.route('/delete/<entry_id>')
def delete_entry(entry_id):
if not session.get('logged_in'):
abort(401)
g.db.execute('delete from entries where id=' + entry_id)
g.db.commit()
flash('Entry was succesfully removed')
return redirect(url_for('show_entries'))
Любые идеи, почему я мог бы получить эту ошибку?
Спасибо!
'G' представляет собой словарь-подобный объект. Вы пытаетесь выполнить поиск атрибутов. Вы можете захотеть сделать 'g.get (" db ")' в зависимости от того, как вы положили туда db. – sytech