Mam tabelę users
w mojej bazie danych MySql. Ta tabela ma pola id
, name
i age
.Jak usunąć rekord przez identyfikator w Flask-SQLAlchemy
Jak mogę usunąć jakiś rekord przez id
?
Teraz używam następujący kod:
user = User.query.get(id)
db.session.delete(user)
db.session.commit()
Ale nie chcę, aby każde zapytanie przed usunięciem operację. Czy jest jakiś sposób to zrobić? Wiem, mogę użyć db.engine.execute("delete from users where id=...")
, ale chciałbym użyć metody delete()
.
Dzięki!
upewnij się umieścić '' 'db.session .commit() '' 'na końcu. gdzie db: '' 'db = SQLAlchemy (aplikacja)' '' – Ben
Czy można używać IN za pomocą tej metody? – ram4nd
Ostrzeżenie: Takie 'delete' nie będzie kaskadowane, jeśli będziesz polegał na kaskadowaniu w Pythonie/ORM. Będziesz musiał najpierw [zapytać o obiekt, a następnie usunąć] (https://stackoverflow.com/questions/19243964/sqlalchemy-delete-doesnt-cascade). –