Librairie "outil" pour SQLAlchemy et Flask
Cette librairie fournit des décorateurs pour faciliter le développement avec Flask et SQLAlchemy.
Paquet Python : https://pypi.org/project/utils-flask-sqlalchemy/.
Elle est composée de trois outils principaux :
Les serialisers
Le décorateur de classe @serializable permet la sérialisation JSON d'objets Python issus des classes SQLAlchemy. Il rajoute dynamiquement une méthode as_dict() aux classes qu'il décore. Cette méthode transforme l'objet de la classe en dictionnaire en transformant les types Python non compatibles avec le format JSON. Pour cela, elle se base sur les types des colonnes décrits dans le modèle SQLAlchemy.
Le décorateur @serializable peut être utilisé tel quel, ou être appelé avec les arguments suivants :
exclude(iterable, default=()). Spécifie les colonnes qui doivent être exclues lors de la sérialisation. Par défaut, toutes les colonnes sont sérialisées.
La méthode as_dict() contient les paramètre suivants :
recursif(boolean, default = False) : contrôle si la serialisation doit sérialiser les modèles enfants (relationships) de manière recursivecolumns(iterable, default=()). Spécifie les colonnes qui doivent être présentes dans le dictionnaire en sortie. Si non spécifié, le comportement par défaut du décorateur est adopté.relationships(iterable, default=()). Spécifie les relationnships qui doivent être présentes dans le dictionnaire en sortie. Par défaut toutes les relationships sont prises sirecursif=True.
Les réponses
Le fichier contient des décorateurs de route Flask :
- Le décorateur
@json_resptransforme l'objet retourné par la fonction en JSON. Renvoie une 404 si la valeur retournée par la fonction est None ou un tableau vide - Le décorateur
@json_resp_accept_empty_listtransforme l'objet retourné par la fonction en JSON. Renvoie une 404 si la valeur retournée par la fonction est None et 200 si c'est un tableau vide - Le décorateur
@csv_resptranforme l'objet retourné par la fonction en fichier CSV. La fonction doit retourner un tuple de ce format(file_name, data, columns, separator)
Le mapping à la volée
Le fichier generic contient les classes GenericTable et GenericQuery permettant de faire des requêtes sans définir de modèle au préalable.
Metadata
Release files for utils-flask-sqlalchemy 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| utils_flask_sqlalchemy-0.5.0.tar.gz | 56.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| utils_flask_sqlalchemy-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 122.1 kB
Release files / utils_flask_sqlalchemy-0.5.0.tar.gz
| Download URL | utils_flask_sqlalchemy-0.5.0.tar.gz |
|---|---|
| Size | 56.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8bfe96649be8cb1ea60795af8db01516e3e311de92ae6031f4ba5771febc018a
|
|
BLAKE2b-256 checksum How to use checksums |
4ab4db94853bd72ce5ace7ec2df1b75b7d7c05ee1cfdec2e40d29b5883a79ee2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / utils_flask_sqlalchemy-0.5.0-py3-none-any.whl
| Download URL | utils_flask_sqlalchemy-0.5.0-py3-none-any.whl |
|---|---|
| Size | 65.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
438cd531fac3fdf1e11ec624667011123ca571180b473acfcfe8308f99a7343c
|
|
BLAKE2b-256 checksum How to use checksums |
b9e36ad81e269cd982281b1ced8432486d3b9aa75b76db88be8d0b556d5c58f1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|