Как удалить запись по id в колбе-SQLAlchemy
Я users
таблица в моей базе данных MySQL. Эта таблица имеет id
,name
и age
поля.
как я могу удалить некоторые записи id
?
сейчас я использую следующий код:
user = User.query.get(id)
db.session.delete(user)
db.session.commit()
но я не хочу делать никаких запросов до операции удаления. Есть ли способ сделать это? Я знаю, я могу использовать db.engine.execute("delete from users where id=...")
, но я хотел бы использовать delete()
метод.
спасибо!
2 ответа:
ты можешь это сделать,
User.query.filter_by(id=123).delete()
или
User.query.filter(User.id == 123).delete()
Edit:
обязательно зафиксируйте для
delete()
вступили в силу.
просто хочу поделиться другой вариант:
# mark two objects to be deleted session.delete(obj1) session.delete(obj2) # commit (or flush) session.commit()
http://docs.sqlalchemy.org/en/latest/orm/session_basics.html#deleting
в этом примере, следующие коды должны отлично работает:
obj=User.query.filter_by(id=123).one() session.delete(obj) session.commit()