Di consigo una instancia de modelo así:SQL Alchemy: cómo eliminar de una instancia modelo?
instance = session.query(MyModel).filter_by(id=1).first()
¿Cómo puedo eliminar esa fila? ¿Hay algún método especial para llamar?
Di consigo una instancia de modelo así:SQL Alchemy: cómo eliminar de una instancia modelo?
instance = session.query(MyModel).filter_by(id=1).first()
¿Cómo puedo eliminar esa fila? ¿Hay algún método especial para llamar?
Ok he encontrado después de una búsqueda adicional:
session.delete(instance)
+1 Impresionante, gracias – Hubro
Creo que esto es mejor si elimina por id: MyModel.query.filter (MiModelo.id == 123) .delete() Más directo. Ver https://stackoverflow.com/questions/27158573/how-to-delete-a-record-by-id-in-flask-sqlalchemy –
que puede disparar una sola consulta para esto.
para todos los registros
db.session.query(Table_name).delete()
db.session.commit()
aquí dB es el objeto de clase Frasco SQLAlchemy. Eliminará todos los registros y si desea eliminar registros específicos, intente con cláusula filter_by en la consulta. ex.
valor específico para
db.session.query(Table_name).filter_by(id==123).delete()
db.session.commit()
Recuerde usar .get (1) en lugar de filter_by (id = 1) .First(), si 'id' es la clave principal! Esto da como resultado menos hits en la base de datos. Lea: http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.get – MrOerni