mini projet

Il faut terminer la version minimum du tp précédent avant de commencer le projet

Consignes pour Réaliser toutes les interfaces pour ajouter/modifier/supprimer et afficher les données des 2 tableaux python de votre sujet


Faire les mêmes interfaces que lors des tps précédents mais en utilisant les 2 tableaux de données de votre sujet


Le projet est à rendre sur moodle (utiliser le lien suivant), clé d’inscription: R105 pour le samedi 4 novembre


Soigner l’ergonomie des interfaces

Faire attention que les contenus des pages affichées soient valides sur W3C



Respecter les consignes suivantes (surtout typographique) :


Remplacer table par les 2 noms des tables de votre sujet


Volontairement, il n’y a pas de “design”, cependant voici une démonstration des fonctionnalités du travail attendu http://amillet1.pythonanywhere.com/

ATTENTION : on ne doit pas retrouver le mot article dans votre code

L’affichage des 2 tableaux “python” doit être sous forme de tableaux pour afficher/ajouter/supprimer/modifier (CRUD back-office)

Les 2 tableaux python ne sont jamais modifiés
Les noms des champs INPUT dans les formulaires doivent porter le nom des clés des tableaux python

Lors de la modification d’un enregistrement, afficher le contenu de l’enregistrement (la ligne sélectionnée) dans les champs INPUT du formulaire.


Étapes et exemples de vues

exemple

Interfaces supplémentaires

afficher les 2 contenus des 2 tables dans la même vue

exemple avec les articles


Exemple de code pour afficher le contenu du filtre

exemple de code pour afficher les éléments du formulaire filtre si on valide le formulaire

Pour comparer des réels c’est un peu plus compliqué

modification à ajouter pour tester des réels


ANNEXE

script de test du projet :

Un premier script extrait les archives .tar.gz et .zip, ce script recherche un dossier et copie un autre script test_projet.sh dans le dossier. Le script test_projet.sh se trouve au même niveau que le fichier app.py (une erreur est signalée dans le cas contraire).


script de test :

#!/bin/bash
clear
echo -e "\033[0;32m \n**** listes des fichiers :"
ls templates/*

echo -e "\033[0;31m \n***** liste des routes : \033[0m"
grep "@app.route"  app.py

echo -e "\033[0;32m \n**** listes des paramètres (clés des tableaux associatifs) :"
grep "request.form.get"  app.py | uniq -c
echo -e " \033[0m"

code  app.py &

killall python3
flask --debug  --app app  run   --host 0.0.0.0