Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
python:flask:flask_sqlalchemy [2022/11/14 14:48] marclebrun |
python:flask:flask_sqlalchemy [2023/12/08 08:23] (Version actuelle) marclebrun |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Flask-SQLAlchemy ====== | ====== Flask-SQLAlchemy ====== | ||
- | * Doc de **SQLAlchemy 1.4** : [[https://docs.sqlalchemy.org/en/14/contents.html]] | + | * Doc de **SQLAlchemy 2.0** : [[https://docs.sqlalchemy.org/en/20/]] |
* Doc de **Flask-SQLAlchemy** : [[https://flask-sqlalchemy.palletsprojects.com/en/3.0.x/]] | * Doc de **Flask-SQLAlchemy** : [[https://flask-sqlalchemy.palletsprojects.com/en/3.0.x/]] | ||
Ligne 8: | Ligne 8: | ||
* [[python:flask:flask_sqlalchemy:modeles]] | * [[python:flask:flask_sqlalchemy:modeles]] | ||
* [[python:flask:flask_sqlalchemy:requetes_select]] | * [[python:flask:flask_sqlalchemy:requetes_select]] | ||
+ | * [[python:flask:flask_sqlalchemy:requetes_insert]] | ||
+ | * [[python:flask:flask_sqlalchemy:requetes_update]] | ||
+ | * [[python:flask:flask_sqlalchemy:requetes_delete]] | ||
+ | * [[python:flask:flask_sqlalchemy:flask_shell]] | ||
- | ===== Modèles ===== | ||
- | ===== Requêtes ===== | ||
- | |||
- | Source: [[https://flask-sqlalchemy.palletsprojects.com/en/3.0.x/queries/]] | ||
- | |||
- | **SELECT** selon un ID : | ||
- | |||
- | <code python> | ||
- | user = User.query.get(5) | ||
- | </code> | ||
- | |||
- | **SELECT** selon le contenu d'un champ : | ||
- | |||
- | <code python> | ||
- | user = User.query.filter_by(name = 'Marc').first() | ||
- | user = User.query.filter_by(name = 'Marc').one() | ||
- | </code> | ||
- | |||
- | **INSERT** | ||
- | |||
- | <code python> | ||
- | user = User(name="Marc", ...) | ||
- | db.session.add(user) | ||
- | db.session.commit() | ||
- | </code> | ||
- | |||
- | **DELETE** selon un ID : | ||
- | |||
- | <code python> | ||
- | user = User.query.get(5) | ||
- | db.session.delete(user) | ||
- | db.session.commit() | ||
- | </code> | ||
- | |||
- | **DELETE** plusieurs ligne selon un critère : | ||
- | |||
- | <code python> | ||
- | users = User.query.filter_by(active = True).all() | ||
- | for user in users: | ||
- | db.session.delete(user) | ||
- | db.session.commit() | ||
- | </code> | ||