sujets

liste des sujets

sujet 1

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_departement /departement-usine/show GET affiche les types d’employés retourne la vue show_departement.html
add_departement /departement-usine/add GET affiche le formulaire pour ajouter un département retourne la vue add_departement.html
valid_add_departement /departement-usine/add POST validation (soumission) du formulaire pour ajouter un département redirection sur la route /departement-usine/show
delete_departement /departement-usine/delete GET suppression d’un département redirection sur la route /departement-usine/show
edit_departement /departement-usine/edit GET affiche le formulaire pour modifier un département retourne la vue edit_departement.html
valid_edit_departement /departement-usine/edit POST validation (soumission) du formulaire pour modifier un département redirection sur la route /departement-usine/show
show_employe /employe/show GET affiche les employes retourne la vue show_employe.html
add_employe /employe/add GET affiche le formulaire pour ajouter un employe retourne la vue add_employe.html
valid_add_employe /employe/add POST validation (soumission) du formulaire pour ajouter un employe redirection sur la route /employe/show
delete_employe /employe/delete GET suppression d’un employe redirection sur la route /employe/show
edit_employe /employe/edit GET affiche le formulaire pour modifier un employe retourne la vue edit_employe.html
valid_edit_employe /employe/edit POST validation (soumission) du formulaire pour modifier un employe redirection sur la route /employe/show
filtre_employe /employe/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_employe_filtre_show.html



# ##########################################################Sujet 1

departementsUsine = [
    {'id':1,'nomDepartement':'Production', 'logo': 'logo_production.png'},
    {'id':2,'nomDepartement':'Marketing', 'logo': 'logo_marketing.png'},
    {'id':3,'nomDepartement':'Méthode', 'logo': 'logo_methode.png'},
    {'id':4,'nomDepartement':'Recherche et développement', 'logo': 'logo_recherche_et_developpement.png'}
]

employes = [
    {'id':1,'nomEmploye':'Gauthier', 'villeDept':'Belfort', 'dateEmbauche':'2011-09-06', 'indice':'395' , 'salaire':'2500', 'photo':'employe1.png', 'departement_id':2},
    {'id':2,'nomEmploye':'Peslier', 'villeDept':'Valdoie', 'dateEmbauche':'2009-02-01', 'indice':'375' , 'salaire':'2800', 'photo':'employe2.png', 'departement_id':1},
    {'id':3,'nomEmploye':'Rousselet', 'villeDept':'Savoyeux', 'dateEmbauche':'2010-05-15', 'indice':'295' , 'salaire':'2000', 'photo':'employe3.png', 'departement_id':3},
    {'id':4,'nomEmploye':'Perez', 'villeDept':'Besançon', 'dateEmbauche':'2009-02-01', 'indice':'255' , 'salaire':'1500', 'photo':'employe4.png', 'departement_id':1},
    {'id':5,'nomEmploye':'Benatti', 'villeDept':'Pont-de-Planches', 'dateEmbauche':'2011-09-06', 'indice':'285' , 'salaire':'1900', 'photo':'employe5.png', 'departement_id':3},
    {'id':6,'nomEmploye':'Thiebaud', 'villeDept':'Frotey', 'dateEmbauche':'2011-09-06', 'indice':'295' , 'salaire':'2000', 'photo':'employe6.png', 'departement_id':1},
    {'id':7,'nomEmploye':'Gauthier', 'villeDept':'Valdoie', 'dateEmbauche':'2007-04-02', 'indice':'285' , 'salaire':'1900', 'photo':'employe7.png', 'departement_id':3},
    {'id':8,'nomEmploye':'Lambert' , 'villeDept':'Belfort', 'dateEmbauche':'2012-03-01', 'indice':'345' , 'salaire':'2200', 'photo':'employe8.png', 'departement_id':2},
    {'id':9,'nomEmploye':'Dupond' , 'villeDept':'Besancon', 'dateEmbauche':'2011-02-04', 'indice':'275' , 'salaire':'1800', 'photo':'employe9.png', 'departement_id':1},
    {'id':10,'nomEmploye':'Durand', 'villeDept':'Vesoul', 'dateEmbauche':'2011-02-04', 'indice':'205' , 'salaire':'1200', 'photo':'no_photo.jpg', 'departement_id':1},
    {'id':11,'nomEmploye':'Lapierre', 'villeDept':'Valdoie', 'dateEmbauche':'2012-07-25', 'indice':'295' , 'salaire':'2000', 'photo':'employe10.png', 'departement_id':1},
    {'id':12,'nomEmploye':'Philippe', 'villeDept':'Belfort', 'dateEmbauche':'2011-03-21', 'indice':'345' , 'salaire':'2200', 'photo':'employe11.png', 'departement_id':2}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)



# sujet 1 : departement_usine / employe       **

INSERT INTO departement_usine (id_departement, nom_departement, logo) 
VALUES
(NULL, 'Production','logo_production.png'),
(NULL, 'Marketing','logo_marketing.png'),
(NULL, 'Méthode','logo_methode.png'),
(NULL, 'Recherche et développement','logo_recherche_et_developpement.png');


INSERT INTO employe(id_employe,nom_employe,ville_dept,date_embauche,indice,salaire, photo, departement_id) VALUES
    (NULL,'Gauthier', 'Belfort', '2011-09-06', 395, 2500 ,'employe1.png', 2),
    (NULL,'Peslier', 'Valdois', '2009-02-01', 375, 2800 ,'employe2.png', 1),
    (NULL,'Rousselet', 'Savoyeux', '2010-05-15', 295, 2000 ,'employe3.png', 3),
    (NULL,'Perez', 'Besançon', '2009-02-01', 255, 1500 ,'employe4.png', 1),
    (NULL,'Benatti', 'Pont-de-Planches', '2011-09-06', 285, 1900 ,'employe5.png', 3),
    (NULL,'Thiebaud', 'Frotey', '2011-09-06', 295, 2000 ,'employe6.png', 1),
    (NULL,'Gauthier', 'Valdoie', '2007-04-02', 285, 1900 ,'employe7.png', 3),
    (NULL,'Lambert', 'Belfort', '2012-03-01', 345, 2200 ,'employe8.png', 2),
    (NULL,'Dupond', 'Besancon', '2011-02-04', 275, 1800 ,'employe9.png', 1),
    (NULL,'Durand', 'Vesoul', '2011-02-04', 205, 1200 ,'no_photo.jpg', 1),
    (NULL,'Lapierre', 'Valdoie', '2012-07-25', 295, 2000 ,'employe10.png', 1),
    (NULL,'Philippe', 'Belfort', '2011-03-21', 345, 2200 ,'employe11.png', 2);

sujet 2

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_localisation /localisation-activite/show GET affiche les localisations retourne la vue show_localisation.html
add_localisation /localisation-activite/add GET affiche le formulaire pour ajouter une localisation retourne la vue add_localisation.html
valid_add_localisation /localisation-activite/add POST validation (soumission) du formulaire pour ajouter une localisation redirection sur la route /localisation-activite/show
delete_localisation /localisation-activite/delete GET suppression d’une localisation redirection sur la route /localisation-activite/show
edit_localisation /localisation-activite/edit GET affiche le formulaire pour modifier une localisation retourne la vue edit_localisation.html
valid_edit_localisation /localisation-activite/edit POST validation (soumission) du formulaire pour modifier une localisation redirection sur la route /localisation-activite/show
show_activite /activite/show GET affiche les activites retourne la vue show_activite.html
add_activite /activite/add GET affiche le formulaire pour ajouter une activite retourne la vue add_activite.html
valid_add_activite /activite/add POST validation (soumission) du formulaire pour ajouter une activite redirection sur la route /activite/show
delete_activite /activite/delete GET suppression d’une activite redirection sur la route /activite/show
edit_activite /activite/edit GET affiche le formulaire pour modifier une activite retourne la vue edit_activite.html
valid_edit_activite /activite/edit POST validation (soumission) du formulaire pour modifier une activite redirection sur la route /activite/show
filtre_activite /activite/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_activite_filtre_show.html



localisationsActivite=[
{'id': 1, 'nomLieu': 'Gymnase IUT', 'nomAdresse': '11 Rue Rosa Bonheur, 90000 Belfort', 'lat': '47.64409600', 'lng': '6.83917600'}, 
{'id': 2, 'nomLieu': 'Gymnase du phare', 'nomAdresse': '2 Rue Paul Koepfler, 90000 Belfort', 'lat': '47.63908900', 'lng': '6.84955610'}, 
{'id': 3, 'nomLieu': 'Stade d athlétisme', 'nomAdresse': 'Rue Floréal, 90000 Belfort ', 'lat': '47.65531800', 'lng': '6.85577000'}, 
{'id': 4, 'nomLieu': 'Site du Malsaucy', 'nomAdresse': '7 Rue du Malsaucy, 90300 Sermamagny', 'lat': '47.68988100', 'lng': '6.83138900'}, 
{'id': 5, 'nomLieu': 'Piscine', 'nomAdresse': '1 Parc des Loisirs, 90800 Bavilliers', 'lat': '47.63223200', 'lng': '6.83256200'}, 
{'id': 6, 'nomLieu': 'Forge Musée Etueffont', 'nomAdresse': '2 Rue de Lamadeleine, 90170 Étueffont', 'lat': '47.72251210', 'lng': '6.92096180'}
]


activites=[
    {'id':1,'nomActivite':'pêche'  , 'dateCreation':'2015-02-02' , 'coutInscription':'100.00' , 'typeActivite':'loisirs', 'nbParticipants':'65' , 'localisation_id': 2, 'image': 'peche.jpg'},
    {'id':2,'nomActivite':'tir à l arc'  , 'dateCreation':'2013-02-02', 'coutInscription':'135' , 'typeActivite':'sport', 'nbParticipants':'35' , 'localisation_id':4, 'image': 'tir-a-l-arc.jpg'},
    {'id':3,'nomActivite':'handball'  , 'dateCreation':'2013-02-02', 'coutInscription':'100.00' , 'typeActivite':'sport', 'nbParticipants':'36' , 'localisation_id':1, 'image': 'handball.jpg'},
    {'id':4,'nomActivite':'Atelier musique'  , 'dateCreation':'2000-02-02' , 'coutInscription':'200.00' , 'typeActivite':'loisirs', 'nbParticipants':'55' , 'localisation_id':3, 'image': 'musique.jpg'},
    {'id':5,'nomActivite':'cuisine'  , 'dateCreation':'2015-02-02','coutInscription':'250.00' , 'typeActivite':'loisirs' , 'nbParticipants':'15' , 'localisation_id':4, 'image': 'cuisine.jpg'},
    {'id':6,'nomActivite':'Football'  , 'dateCreation':'2015-02-02','coutInscription':'105.00' , 'typeActivite':'sport', 'nbParticipants':'105' , 'localisation_id':3, 'image': 'football.jpg'},
    {'id':7,'nomActivite':'Musculation'  , 'dateCreation':'2015-02-02' , 'coutInscription':'100.00' , 'typeActivite':'sport', 'nbParticipants':'35' , 'localisation_id':1, 'image': 'musculation.jpg'},
    {'id':8,'nomActivite':'Natation' , 'dateCreation':'2014-10-25','coutInscription':'180' , 'typeActivite':'sport' , 'nbParticipants':'25' , 'localisation_id':5, 'image': 'natation.jpg'},
    {'id':9,'nomActivite':'Tennis' , 'dateCreation':'2015-02-01' , 'coutInscription':'200' , 'typeActivite':'sport' , 'nbParticipants':'15' , 'localisation_id':1, 'image': 'tennis.jpg'},
    {'id':10,'nomActivite':'Ping Pong' , 'dateCreation':'2000-10-20' , 'coutInscription':'130' , 'typeActivite':'sport', 'nbParticipants':'65' , 'localisation_id':1, 'image': 'ping-pong.jpg'},
    {'id':11,'nomActivite':'Escalade' , 'dateCreation':'2014-11-15' , 'coutInscription':'100' , 'typeActivite':'sport' , 'nbParticipants':'35' , 'localisation_id':2, 'image': 'escalade.jpg'},
    {'id':12,'nomActivite':'zumba' , 'dateCreation':'2014-10-15', 'coutInscription':'140' , 'typeActivite':'sport', 'nbParticipants':'36' , 'localisation_id':1, 'image': 'zumba.jpg'},
    {'id':13,'nomActivite':'Basketball' , 'dateCreation':'2013-06-01', 'coutInscription':'120' , 'typeActivite':'sport' , 'nbParticipants':'25' , 'localisation_id':1, 'image': 'basketball.jpg'},
    {'id':14,'nomActivite':'Volley' , 'dateCreation':'2013-05-08', 'coutInscription':'125' , 'typeActivite':'sport' , 'nbParticipants':'35' , 'localisation_id':1, 'image': 'volleyball.jpg'},
    {'id':15,'nomActivite':'Forge' , 'dateCreation':'2021-09-20', 'coutInscription':'40' , 'typeActivite':'loisirs' , 'nbParticipants':'10' , 'localisation_id':6, 'image': 'forge.jpg'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 2 : activite / localisation_activite

INSERT INTO localisation_activite  (id_localisation , nom_lieu,nom_adresse,lat,lng) VALUES
    (  NULL,  'Gymnase IUT','11 Rue Rosa Bonheur, 90000 Belfort', 47.644096,6.839176 ),
    (  NULL,  'Gymnase du phare','2 Rue Paul Koepfler, 90000 Belfort',47.639089,6.8495561),
    (  NULL,  'Stade d athlétisme','Rue Floréal, 90000 Belfort ',47.655318,6.855770 ),
    (  NULL,  'Site du Malsaucy','7 Rue du Malsaucy, 90300 Sermamagny',47.689881,6.831389 ),
    (  NULL,  'Piscine','1 Parc des Loisirs, 90800 Bavilliers', 47.632232,6.832562),
    (  NULL,    'Forge Musée Etueffont', '2 Rue de Lamadeleine, 90170 Étueffont',47.7225121,6.9209618);


INSERT INTO activite (id_activite, nom_activite, date_creation, cout_inscription, type_activite, nb_participants, localisation_id, image) VALUES
 ( NULL, 'pêche' , '2015-02-02' , 100.00 , 'loisirs', 65 , 2 , 'peche.jpg'),
 ( NULL, 'tir à l arc' , '2013-02-02', 135 , 'sport', 35 , 4 , 'tir-a-l-arc.jpg'),
 ( NULL, 'handball' , '2013-02-02', 100.00 , 'sport', 36 , 1 ,'handball.jpg'),
 ( NULL, 'Atelier musique' , '2000-02-02' , 200.00 , 'loisirs', 55 , 3 ,'musique.jpg'),
 ( NULL, 'cuisine' , '2015-02-02', 250.00 , 'loisirs' , 15 , 4 ,'cuisine.jpg'),
 ( NULL, 'Football' , '2015-02-02', 105.00 , 'sport', 105 , 3 ,'football.jpg'),
 ( NULL, 'Musculation' , '2015-02-02' , 100.00 , 'sport', 35 , 1 ,'musculation.jpg'),
 ( NULL, 'Natation' , '2014-10-25', 180 , 'sport' , 25 , 5 ,'natation.jpg'),
 ( NULL, 'Tennis' , '2015-02-01' , 200 , 'sport' , 15 , 1 , 'tennis.jpg'),
 ( NULL, 'Ping Pong' , '2000-10-20' , 130 , 'sport', 65 , 1 ,'ping-pong.jpg'),
 ( NULL, 'Escalade' , '2014-11-15' , 100, 'sport' , 35 , 2 ,'escalade.jpg'),
 ( NULL, 'zumba' , '2014-10-15', 140 , 'sport', 36 , 1,'zumba.jpg'),
 ( NULL, 'Basketball' , '2013-06-01', 120 , 'sport' , 25 , 1 ,'volleyball.jpg'),
 ( NULL, 'Volley' , '2013-05-08', 125 , 'sport' , 35 , 1 ,'volleyball.jpg'),
 ( NULL, 'Forge' , '2021-09-20', 40 , 'loisirs' , 5 , 6 ,'forge.jpg');

sujet 3

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_club /club-foot/show GET affiche les types d’joueurs retourne la vue show_club.html
add_club /club-foot/add GET affiche le formulaire pour ajouter un club retourne la vue add_club.html
valid_add_club /club-foot/add POST validation (soumission) du formulaire pour ajouter un club redirection sur la route /club-foot/show
delete_club /club-foot/delete GET suppression d’un club redirection sur la route /club-foot/show
edit_club /club-foot/edit GET affiche le formulaire pour modifier un club retourne la vue edit_club.html
valid_edit_club /club-foot/edit POST validation (soumission) du formulaire pour modifier un club redirection sur la route /club-foot/show
show_joueur /joueur/show GET affiche les joueurs retourne la vue show_joueur.html
add_joueur /joueur/add GET affiche le formulaire pour ajouter un joueur retourne la vue add_joueur.html
valid_add_joueur /joueur/add POST validation (soumission) du formulaire pour ajouter un joueur redirection sur la route /joueur/show
delete_joueur /joueur/delete GET suppression d’un joueur redirection sur la route /joueur/show
edit_joueur /joueur/edit GET affiche le formulaire pour modifier un joueur retourne la vue edit_joueur.html
valid_edit_joueur /joueur/edit POST validation (soumission) du formulaire pour modifier un joueur redirection sur la route /joueur/show
filtre_joueur /joueur/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_joueur_filtre_show.html


# ########################################################### Sujet 3

clubsFoot=[
    {'id':1,'nomClub':'Paris SG' , 'villeClub':'Paris', 'image':'psg.png'},
    {'id':2,'nomClub':'Chelsea' , 'villeClub':'Londres', 'image':'Chelsea.png'},
    {'id':3,'nomClub':'FC Barcelona' , 'villeClub':'Barcelone', 'image':'Barcelone.png'}
]


joueurs=[
    {'id':1,'nomJoueur':'Hazard' , 'prenomJoueur':'Eden' , 'dateNaissJoueur':'1991-01-07', 'tailleJoueur':'1.90' , 'club_id':2, 'image':'Eden_hazard.jpg'},
    {'id':2,'nomJoueur':'Messi' , 'prenomJoueur':'Lionel' , 'dateNaissJoueur':'1987-06-24', 'tailleJoueur':'1.68' , 'club_id':3, 'image':'messi.jpeg'},
    {'id':3,'nomJoueur':'Matuidi' , 'prenomJoueur':'Blaise' , 'dateNaissJoueur':'1987-04-09' , 'tailleJoueur':'1.90' , 'club_id':1, 'image':'matuidi.jpg'},
    {'id':4,'nomJoueur':'Fabregas' , 'prenomJoueur':'Cesc' , 'dateNaissJoueur':'1987-05-04' , 'tailleJoueur':'1.80' , 'club_id':2, 'image':'fabregas.jpg'},
    {'id':5,'nomJoueur':'Courtois' , 'prenomJoueur':'Thibaut' , 'dateNaissJoueur':'1992-05-11' , 'tailleJoueur':'1.90' , 'club_id':3, 'image':'Courtois.jpg'},
    {'id':6,'nomJoueur':'Pique' , 'prenomJoueur':'Gerard' , 'dateNaissJoueur':'1987-02-02' , 'tailleJoueur':'1.750' , 'club_id':1, 'image':'pique.jpg'},
    {'id':7,'nomJoueur':'Terry' , 'prenomJoueur':'John' , 'dateNaissJoueur':'1980-12-07' , 'tailleJoueur':'1.90' , 'club_id':2, 'image':'john.jpg'},
    {'id':8,'nomJoueur':'Ibrahimovic' , 'prenomJoueur':'Zlatan' , 'dateNaissJoueur':'1981-10-03' , 'tailleJoueur':'1.80' , 'club_id':1, 'image':'Ibrahimovic.jpg'},
    {'id':9,'nomJoueur':'Cahill' , 'prenomJoueur':'Gary' , 'dateNaissJoueur':'1985-12-19' , 'tailleJoueur':'1.90' , 'club_id':2, 'image':'Cahill.jpg'},
    {'id':10,'nomJoueur':'Rakitic' , 'prenomJoueur':'Ivan' , 'dateNaissJoueur':'1988-04-10' , 'tailleJoueur':'1.70' , 'club_id':3, 'image':'Rakitic.jpg'},
    {'id':11,'nomJoueur':'Digne' , 'prenomJoueur':'Lucas' , 'dateNaissJoueur':'1993-01-20' , 'tailleJoueur':'1.80' , 'club_id':1, 'image':'Digne.jpeg'},
    {'id':12,'nomJoueur':'Suarez' , 'prenomJoueur':'Luis' , 'dateNaissJoueur':'1987-01-24' , 'tailleJoueur':'1.80' , 'club_id':3, 'image':'Suarez.png'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- sujet 3 : joueur / club    **


INSERT INTO club_foot(id_club, nom_club, ville_club,image) VALUES
(NULL,'Paris SG' , 'Paris','psg.png'),
(NULL,'Chelsea' , 'Londres','Chelsea.png'),
(NULL,'FC Barcelona' ,'Barcelone','Barcelone.png');

INSERT INTO joueur(id_joueur, nom_joueur, prenom_joueur, date_naissance, taille_joueur, image, club_id) VALUES
    (NULL,'Hazard' , 'Eden' , '1991-01-07', '1.90' , 'Eden_hazard.jpg', 2),
    (NULL,'Messi' , 'Lionel' , '1987-06-24', '1.68' , 'messi.jpeg', 3),
    (NULL,'Matuidi' , 'Blaise' , '1987-04-09' ,'1.90' , 'matuidi.jpg', 1),
    (NULL,'Fabregas' , 'Cesc' , '1987-05-04' , '1.80' , 'fabregas.jpg', 2),
    (NULL,'Courtois' , 'Thibaut' , '1992-05-11' , '1.90' ,  'Courtois.jpg' , 3),
    (NULL,'Pique' , 'Gerard' , '1987-02-02' , '1.750' , 'pique.jpg' , 1),
    (NULL,'Terry' , 'John' , '1980-12-07' , '1.90', 'john.jpg' , 2),
    (NULL,'Ibrahimovic' ,'Zlatan' ,'1981-10-03' , '1.80' , 'Ibrahimovic.jpg', 1),
    (NULL,'Cahill' , 'Gary' ,'1985-12-19' , '1.90' , 'Cahill.jpg', 2),
    (NULL,'Rakitic' ,'Ivan' , '1988-04-10' , '1.70' , 'Rakitic.jpg', 3),
    (null,'Digne' , 'Lucas' , '1993-01-20' , '1.80' , 'Digne.jpeg',  1),
    (NULL,'Suarez' , 'Luis' , '1987-01-24' , '1.80' ,'Suarez.png' ,  3);

sujet 4

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_categorie /categorie-voiture/show GET affiche les categories retourne la vue show_categorie.html
add_categorie /categorie-voiture/add GET affiche le formulaire pour ajouter une categorie retourne la vue add_categorie.html
valid_add_categorie /categorie-voiture/add POST validation (soumission) du formulaire pour ajouter une categorie redirection sur la route /categorie-voiture/show
delete_categorie /categorie-voiture/delete GET suppression d’une categorie redirection sur la route /categorie-voiture/show
edit_categorie /categorie-voiture/edit GET affiche le formulaire pour modifier une categorie retourne la vue edit_categorie.html
valid_edit_categorie /categorie-voiture/edit POST validation (soumission) du formulaire pour modifier une categorie redirection sur la route /categorie-voiture/show
show_voiture /voiture/show GET affiche les voitures retourne la vue show_voiture.html
add_voiture /voiture/add GET affiche le formulaire pour ajouter une voiture retourne la vue add_voiture.html
valid_add_voiture /voiture/add POST validation (soumission) du formulaire pour ajouter une voiture redirection sur la route /voiture/show
delete_voiture /voiture/delete GET suppression d’une voiture redirection sur la route /voiture/show
edit_voiture /voiture/edit GET affiche le formulaire pour modifier une voiture retourne la vue edit_voiture.html
valid_edit_voiture /voiture/edit POST validation (soumission) du formulaire pour modifier une voiture redirection sur la route /voiture/show
filtre_voiture /voiture/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_voiture_filtre_show.html



# ########################################################### Sujet  4

categoriesVoitures=[
    {'id':1,'libelleCategorie':'berline', 'catalogue':'1', 'logo':'logo_berline.png'},
    {'id':2,'libelleCategorie':'break', 'catalogue':'1', 'logo':'logo_break.png'},
    {'id':3,'libelleCategorie':'suv', 'catalogue':'1', 'logo':'logo_suv.png'},
    {'id':4,'libelleCategorie':'monospace', 'catalogue':'2', 'logo':'logo_monospce.png'},
    {'id':5,'libelleCategorie':'utilitaire', 'catalogue':'3', 'logo':'logo_utilitaire.png'},
    {'id':6,'libelleCategorie':'citadine', 'catalogue':'1', 'logo':'logo_citadine.png'},
    {'id':7,'libelleCategorie':'autre', 'catalogue':'3', 'logo':'logo_autre.png'}
]

voitures=[
    {'id':1,'nomVoiture':'clio 3', 'dateLancement':'2010-1-1', 'prixVoiture':'5000', 'categorie_id':1, 'puissance':4, 'photo':'clio3.jpg'},
    {'id':2,'nomVoiture':'BMW Serie 6 Gran Coupe' , 'dateLancement':'2012-01-09' , 'prixVoiture':'118400', 'categorie_id':1, 'puissance':34, 'photo':'bmws6.jpg'},
    {'id':3,'nomVoiture':'Mercedes Classe S' , 'dateLancement':'2014-09-15' , 'prixVoiture':'181000', 'categorie_id':1 , 'puissance':50, 'photo':'mercedesclasseS.jpg'},
    {'id':4,'nomVoiture': 'Audi RS6' , 'dateLancement':'2013-11-07' , 'prixVoiture':'120600', 'categorie_id':2, 'puissance':64, 'photo':'audiRS6.jpg'},
    {'id':5,'nomVoiture': 'Porsche Panamera' , 'dateLancement':'2013-04-25' , 'prixVoiture':'123965' , 'categorie_id':2 , 'puissance':35, 'photo':'porschePanamera.jpg'},
    {'id':6,'nomVoiture': 'Range Rover Evoque' , 'dateLancement':'2014-03-10' , 'prixVoiture':'50700' , 'categorie_id':3 , 'puissance':19, 'photo':'rrEvoque.jpg'},
    {'id':7,'nomVoiture': 'Citroen C4 Picasso' , 'dateLancement':'2013-06-04' , 'prixVoiture':'31150' , 'categorie_id':4 , 'puissance':8, 'photo':'c4Picasso.jpg'},
    {'id':8,'nomVoiture': 'Ford S-Max' , 'dateLancement':'2012-08-28' , 'prixVoiture':'38450' , 'categorie_id':4 , 'puissance':8, 'photo':'sMax.jpg'},
    {'id':9,'nomVoiture': 'Fiat Ducato' , 'dateLancement':'2009-07-02' , 'prixVoiture':'24575' , 'categorie_id':5 , 'puissance':9, 'photo':'fiatDucato.jpg'},
    {'id':10,'nomVoiture': 'Renault Kangoo' , 'dateLancement':'2008-05-31' , 'prixVoiture':'19750' , 'categorie_id':5 , 'puissance':7, 'photo':'kangoo.jpg'},
    {'id':11,'nomVoiture': 'Opel Adam' , 'dateLancement':'2009-12-15' , 'prixVoiture':'18900' , 'categorie_id':6 , 'puissance':8, 'photo':'opelAdam.jpg'},
    {'id':12,'nomVoiture': 'Citroen DS3' , 'dateLancement':'2010-02-17' , 'prixVoiture':'19490' , 'categorie_id':6 , 'puissance':9, 'photo':'DS3.jpg'},
    {'id':13,'nomVoiture': 'Dodge RAM 1500 V8 HEMI' , 'dateLancement':'2015-03-26' , 'prixVoiture':'55800' , 'categorie_id':7 , 'puissance':30,  'photo':'DodgeRAM.jpg'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)



-- # sujet 4 : voiture / categorie_voiture       **

INSERT INTO categorie_voiture (id_categorie , libelle_categorie, catalogue, logo) VALUES 
(NULL, 'berline','1','logo_berline.png'),
(NULL, 'break','1','logo_break.png'),
(NULL, 'suv','1','logo_suv.png'),
(NULL, 'monospace','2','logo_monospace.png'),
(NULL, 'utilitaire','3','logo_utilitaire.png'),
(NULL, 'citadine','1','logo_citadine.png'),
(NULL, 'autre','3','logo_autre.png');

INSERT INTO voiture (id_voiture,nom_voiture, date_lancement, prix_voiture, categorie_id, puissance, photo) VALUES 
(null,'clio 3','2010-1-1','5000',1,4,'clio3.jpg'),
(null, 'BMW Serie 6 Gran Coupe', '2012-01-09', '118400',1,34,'bmws6.jpg'),
(null, 'Mercedes Classe S', '2014-09-15', '181000',1, 50,'mercedesclasseS.jpg'),
(null,'Audi RS6', '2013-11-07', '120600',2,64,'audiRS6.jpg'),
(null,'Porsche Panamera', '2013-04-25', '123965', 2, 35,'porschePanamera.jpg'),
(null,'Range Rover Evoque', '2014-03-10', '50700', 3, 19,'rrEvoque.jpg'),
(null,'Citroen C4 Picasso', '2013-06-04', '31150', 4, 8,'c4Picasso.jpg'),
(null,'Ford S-Max', '2012-08-28', '38450', 4, 8,'sMax.jpg'),
(null,'Fiat Ducato', '2009-07-02', '24575', 5, 9,'fiatDucato.jpg'),
(null,'Renault Kangoo', '2008-05-31', '19750', 5, 7,'kangoo.jpg'),
(null,'Opel Adam', '2009-12-15', '18900', 6, 8,'opelAdam.jpg'),
(null,'Citroen DS3', '2010-02-17', '19490', 6, 9,'DS3.jpg'),
(null,'Dodge RAM 1500 V8 HEMI', '2015-03-26', '55800', 7, 30,'DodgeRAM.jpg');



sujet 5

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_plat /type-plat/show GET affiche les types de plats retourne la vue show_type_plat.html
add_type_plat /type-plat/add GET affiche le formulaire pour ajouter un type de plat retourne la vue add_type_plat.html
valid_add_type_plat /type-plat/add POST validation (soumission) du formulaire pour ajouter un type de plat redirection sur la route /type-plat/show
delete_type_plat /type-plat/delete GET suppression d’un type de plat redirection sur la route /type-plat/show
edit_type_plat /type-plat/edit GET affiche le formulaire pour modifier un type de plat retourne la vue edit_type_plat.html
valid_edit_type_plat /type-plat/edit POST validation (soumission) du formulaire pour modifier un type de plat redirection sur la route /type-plat/show
show_plat /plat/show GET affiche les plats retourne la vue show_plat.html
add_plat /plat/add GET affiche le formulaire pour ajouter un plat retourne la vue add_plat.html
valid_add_plat /plat/add POST validation (soumission) du formulaire pour ajouter un plat redirection sur la route /plat/show
delete_plat /plat/delete GET suppression d’un plat redirection sur la route /plat/show
edit_plat /plat/edit GET affiche le formulaire pour modifier un plat retourne la vue edit_plat.html
valid_edit_plat /plat/edit POST validation (soumission) du formulaire pour modifier un plat redirection sur la route /plat/show
filtre_plat /plat/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_plat_filtre_show.html



# ########################################################### Sujet  5

typesPlats=[
    {'id':1,'nomTypePlat':'entrée', 'categorieType':'1' },
    {'id':2,'nomTypePlat':'plat principal', 'categorieType':'2'},
    {'id':3,'nomTypePlat':'dessert', 'categorieType':'3'},
    {'id':4,'nomTypePlat':'plat unique', 'categorieType':'4'}
]
plats=[
    {'id':1,'nomPlat':'Choucroute' , 'prixPlat':12.5 , 'dureePreparation':'30' , 'dateCreation':'2014-10-10' , 'description':'petit plat léger alsacien' , 'typePlat_id':1, 'photo':'choucroute.jpg'},
    {'id':2,'nomPlat':'Cassoulet' , 'prixPlat':15 , 'dureePreparation':'60' , 'dateCreation':'2014-10-12' , 'description':'plats du Sud Ouest' , 'typePlat_id':1, 'photo':'cassoulet.jpg'},
    {'id':3,'nomPlat':'Baeckeoffe' , 'prixPlat':17 , 'dureePreparation':'60' , 'dateCreation':'2013-09-21' , 'description':'plat alsacien' , 'typePlat_id':4, 'photo':'baeckeoffe.jpg'},
    {'id':4,'nomPlat':'Salade savoyarde' , 'prixPlat':9.50 , 'dureePreparation':'10' , 'dateCreation':'2014-05-06' , 'description':'Ideal après une randonnée' , 'typePlat_id':1, 'photo':'salade_savoyarde.jpg'},
    {'id':5,'nomPlat':'Tartiflette' , 'prixPlat':13 , 'dureePreparation':'30' , 'dateCreation':'2014-04-08' , 'description':'plat savoyard' , 'typePlat_id':1, 'photo':'tartiflette.jpg'},
    {'id':6,'nomPlat':'bûche glacée' , 'prixPlat':7 , 'dureePreparation':'70' , 'dateCreation':'2014-04-08' , 'description':'glace 3 saveurs' , 'typePlat_id':3, 'photo':'buche_glacee.jpg'},
    {'id':7,'nomPlat':'salade césar' , 'prixPlat':5 , 'dureePreparation':'10' , 'dateCreation':'2023-04-08' , 'description':'légumes de saison' , 'typePlat_id':1, 'photo':'salade_cezar.jpg'},
    {'id':8,'nomPlat':'salade salade de fruit' , 'prixPlat':6 , 'dureePreparation':'15' , 'dateCreation':'2023-01-08' , 'description':'fruit de saison' , 'typePlat_id':3, 'photo':'salade_de_fruit.jpg'},
    {'id':9,'nomPlat':'salade de pâte ensoleillée' , 'prixPlat':15 , 'dureePreparation':'15' , 'dateCreation':'2023-02-02' , 'description':'légumes de saison et pâtes' , 'typePlat_id':4, 'photo':'salade_de_pate_ensoleillee.jpg'},
    {'id':10,'nomPlat':'salade orange miel' , 'prixPlat':7 , 'dureePreparation':'13' , 'dateCreation':'2023-01-08' , 'description':'fruit de saison' , 'typePlat_id':3, 'photo':'salade_orange_miel.jpg'}
    {'id':11,'nomPlat':'salade petit épeautre' , 'prixPlat':7 , 'dureePreparation':'12' , 'dateCreation':'2023-01-08' , 'description':'petit épeautre local et légume de saison' , 'typePlat_id':'4', 'photo':'salade_petit_epeautre.jpg'}
    {'id':12,'nomPlat':'salade savoyarde' , 'prixPlat':5 , 'dureePreparation':'10' , 'dateCreation':'2023-04-08' , 'description':'légumes de saison' , 'typePlat_id':1, 'photo':'salade_savoyarde.jpg'}
]

;



archive des fichiers d’images de ce sujet



livrable 2 (vacances Noel)

-- sujet 5 : plat / type_Plat       **


INSERT INTO  type_plat (id_type_plat, nom_type_plat, categorie_type) VALUES
(NULL, 'entrée' ,1),
(NULL, 'plat principal' , 2),
(NULL, 'dessert' , 3),
(NULL, 'plat unique' ,4);

INSERT INTO plat (id_plat, nom_plat, prix_plat,  duree_preparation, date_creation,description, type_plat_id, photo) VALUES
(NULL,'Choucroute',12.50,30,'2014-10-10', 'petit plat léger alsacien', 2 , 'choucroute.jpg'),
(NULL,'Cassoulet',15,60,'2014-10-12', 'plat du sud ouest', 2, 'cassoulet.jpg'),
(NULL,'Baeckeoffe',17,60,'2013-09-21', 'plat alsacien', 4, 'baeckeoffe.jpg'),
(NULL,'Salade savoyarde',9.50,10,'2014-05-06', 'Idéal après une randonnée', 1, 'salade_savoyarde.jpg'),
(NULL,'Tartiflette',13,30,'2014-04-08', 'plat savoyard', 2, 'tartiflette.jpg'),
(NULL,'bûche glacée',7,7,'2014-04-08', 'glace 3 saveurs', 3, 'buche_glacee.jpg'),
(NULL,'salade césar' , 5 , 10 , '2023-04-08' , 'légumes de saison' , 1, 'salade_cezar.jpg'),
(NULL,'salade salade de fruit' , 6 , 15 , '2023-01-08' , 'fruit de saison' , 3, 'salade_de_fruit.jpg'),
(NULL,'salade de pâte ensoleillée' , 15 , '15' , '2023-02-02' , 'légumes de saison et pâtes' , 4, 'salade_de_pate_ensoleillee.jpg'),
(NULL,'salade orange miel' , 7 , 13 , '2023-01-08' , 'fruit de saison' , 3, 'salade_orange_miel.jpg'),
(NULL,'salade petit épeautre' , 7 , 12 , '2023-01-08' , 'petit épeautre local et légume de saison' , 4, 'salade_petit_epeautre.jpg'),
(NULL,'salade savoyarde' , 5 , 10 , '2023-04-08' , 'légumes de saison' , 1, 'salade_savoyarde.jpg');



sujet 6

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_genre /genre-film/show GET affiche les genres retourne la vue show_genre.html
add_genre /genre-film/add GET affiche le formulaire pour ajouter un genre retourne la vue add_genre.html
valid_add_genre /genre-film/add POST validation (soumission) du formulaire pour ajouter un genre redirection sur la route /genre-film/show
delete_genre /genre-film/delete GET suppression d’un genre redirection sur la route /genre-film/show
edit_genre /genre-film/edit GET affiche le formulaire pour modifier un genre retourne la vue edit_genre.html
valid_edit_genre /genre-film/edit POST validation (soumission) du formulaire pour modifier un genre redirection sur la route /genre-film/show
show_film /film/show GET affiche les films retourne la vue show_film.html
add_film /film/add GET affiche le formulaire pour ajouter un film retourne la vue add_film.html
valid_add_film /film/add POST validation (soumission) du formulaire pour ajouter un film redirection sur la route /film/show
delete_film /film/delete GET suppression d’un film redirection sur la route /film/show
edit_film /film/edit GET affiche le formulaire pour modifier un film retourne la vue edit_film.html
valid_edit_film /film/edit POST validation (soumission) du formulaire pour modifier un film redirection sur la route /film/show
filtre_film /film/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_film_filtre_show.html



# ########################################################## Sujet 6

genresFilms=[
    {'id':1,'libelleGenre':'Comedie', 'logo':'logo_comedie.png'},
    {'id':2,'libelleGenre':'Science-Fiction', 'logo':'logo_science_fiction.png'},
    {'id':3,'libelleGenre':'Action', 'logo':'logo_action.png'},
    {'id':4,'libelleGenre':'Fantasy', 'logo':'logo_fantasy.png'},
    {'id':5,'libelleGenre':'Animation', 'logo':'logo_animation.png'},
    {'id':6,'libelleGenre':'Horreur', 'logo':'logo_horreur.png'}
]

films = [
    {'id': 1 , 'titreFilm' : 'Le diner de con' , 'dateSortie' : '1998-04-15' , 'nomRealisateur' : 'Francis Veber' , 'genre_id' : 1 , 'duree' : 90, 'affiche':'film_1.jpg' },
    {'id':2,'titreFilm':'Intouchable' , 'dateSortie':'2012-03-28' , 'nomRealisateur':'Eric Toledano','genre_id':1 ,'duree':125, 'affiche':'film_2.jpg' },
    {'id':3,'titreFilm':'Piège de cristal' , 'dateSortie':'1988-09-21' , 'nomRealisateur':'John McTiernan' , 'genre_id':3 ,'duree':90, 'affiche':'film_3.jpg'},
    {'id':4,'titreFilm':'Indiana Jones' , 'dateSortie':'1989-10-18' , 'nomRealisateur':'Steven Spielberg' , 'genre_id':2 ,'duree':125, 'affiche':'film_4.jpg'},
    {'id':5,'titreFilm':'Blade Runner' , 'dateSortie':'1982-09-15' , 'nomRealisateur':'Ridley Scott' , 'genre_id':2 ,'duree' :145, 'affiche':'film_5.jpg'},
    {'id':6,'titreFilm':'Alien' , 'dateSortie':'1979-09-12' , 'nomRealisateur':'Ridley Scott' , 'genre_id':2 ,'duree' :125, 'affiche':'film_6.jpg'},
    {'id':7,'titreFilm':'L Exorciste' , 'dateSortie':'2001-03-14' , 'nomRealisateur':'William Friedkin' , 'genre_id':6 ,'duree':90, 'affiche':'film_7.jpg'},
    {'id':8,'titreFilm':'Psychose' , 'dateSortie':'1960-11-02' , 'nomRealisateur':'Alfred Hitchcock' , 'genre_id':6 ,'duree':125, 'affiche':'film_8.jpg'},
    {'id':9,'titreFilm':'Toy Story' , 'dateSortie':'1996-03-27' , 'nomRealisateur':'John Lasseter' , 'genre_id':5 ,'duree' :90, 'affiche':'film_9.jpg'},
    {'id':10,'titreFilm':'Shrek' , 'dateSortie':'2001-07-04' , 'nomRealisateur':'Andrew Adamson ' , 'genre_id':5 ,'duree' :90, 'affiche':'film_10.jpg'},
    {'id':11,'titreFilm':'La Communauté de l anneau' , 'dateSortie':'2001-12-19' , 'nomRealisateur':'Peter Jackson' , 'genre_id':4 ,'duree' :150, 'affiche':'film_11.jpg'},
    {'id':12,'titreFilm':'Les Deux Tours' , 'dateSortie':'2002-12-18' , 'nomRealisateur':'Peter Jackson' , 'genre_id':4 ,'duree' :152, 'affiche':'film_12.jpg'},
    {'id':13,'titreFilm':'Le Retour du roi' , 'dateSortie':'2003-12-17' , 'nomRealisateur':'Peter Jackson' , 'genre_id':4 ,'duree' :149, 'affiche':'film_13.jpg'},
    {'id':14,'titreFilm':'Inception' , 'dateSortie':'2010-07-08' , 'nomRealisateur':'Christopher Nolan' , 'genre_id':2 ,'duree' :90, 'affiche':'film_14.jpg'},
    {'id':15,'titreFilm':'Warrior' , 'dateSortie':'2011-09-14' , 'nomRealisateur':'Gavin O Connor' , 'genre_id':3 ,'duree' :120, 'affiche':'film_15.jpg'},
    {'id':16,'titreFilm':'Harry Potter à l école des sorciers' , 'dateSortie':'2001-12-05' , 'nomRealisateur':'Chris Columbus' , 'genre_id':4 ,'duree' :125, 'affiche':'film_16.jpg'},
    {'id':17,'titreFilm':'Harry Potter et la Chambre des secrets' , 'dateSortie':'2002-12-04' , 'nomRealisateur':'Chris Columbus' , 'genre_id':4 ,'duree' :125, 'affiche':'film_17.jpg'},
    {'id':18,'titreFilm':'Harry Potter et le Prisonnier d Azkaban' , 'dateSortie':'2004-06-02' , 'nomRealisateur':'Alfonso Cuarón' , 'genre_id':4 ,'duree' :125, 'affiche':'film_18.jpg'},
    {'id':19,'titreFilm':'Harry Potter et la Coupe de feu' , 'dateSortie':'2005-11-30' , 'nomRealisateur': 'Mike Newell' , 'genre_id':4 ,'duree' : 125, 'affiche':'film_19.jpg'},
    {'id':20,'titreFilm':'Harry Potter et l Ordre du phénix' , 'dateSortie':'2009-07-15' , 'nomRealisateur': 'David Yates' , 'genre_id':4 ,'duree' : 125, 'affiche':'film_19.jpg'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 6 : film / genre_film        **

INSERT INTO genre_film(id_genre,libelle_genre, logo) VALUES
(NULL,'Comedie', 'logo_comedie.png'),
(NULL ,'Science-fiction', 'logo_science_fiction.png'),
(NULL ,'Action', 'logo_action.png'),
(NULL ,'Fantasy', 'logo_fantasy.png'),
(NULL ,'Animation', 'logo_animation.png'),
(NULL ,'Horreur', 'logo_horreur.png');

INSERT INTO film(id_film,titre_film,date_sortie,nom_realisateur,genre_id, duree_film, affiche) VALUES
    (NULL ,'Le diner de con' , '1998-04-15' , 'Francis Veber' , 1 , 90,'film_1.jpg'),
    (NULL ,'Intouchable' ,'2012-03-28','Eric Toledano',1 ,125,'film_2.jpg'),
    (NULL ,'Piège de cristal' ,'1988-09-21' ,'John McTiernan' , 3 ,90,'film_3.jpg'),
    (NULL ,'THE Indiana Jones' ,'1989-10-18' , 'Steven Spielberg' , 2 ,125,'film_4.jpg'),
    (NULL ,'Blade Runner' , '1982-09-15' , 'Ridley Scott' , 2 , 145,'film_5.jpg'),
    (NULL ,'Alien' , '1979-09-12' , 'Ridley Scott' , 2 , 125,'film_6.jpg'),
    (NULL ,'L Exorciste' , '2001-03-14' , 'William Friedkin' , 6 , 90,'film_7.jpg'),
    (NULL ,'Psychose' , '1960-11-02' , 'Alfred Hitchcock' , 6 ,125,'film_8.jpg'),
    (NULL,'Toy Story' , '1996-03-27' , 'John Lasseter' , 5 ,90,'film_9.jpg'),
    (NULL ,'Shrek' , '2001-07-04' , 'Andrew Adamson ' , 5 ,90,'film_10.jpg'),
    (NULL ,'La Communauté de l anneau' , '2001-12-19' , 'Peter Jackson' , 4 ,150,'film_11.jpg'),
    (NULL ,'Les Deux Tours' , '2002-12-18' , 'Peter Jackson' , 4 ,152,'film_12.jpg'),
    (NULL ,'Le Retour du roi' , '2003-12-17' , 'Peter Jackson' , 4 ,149,'film_13.jpg'),
    (NULL ,'Inception' , '2010-07-08' , 'Christopher Nolan' , 2 ,90,'film_14.jpg'),
    (NULL ,'Warrior' , '2011-09-14' , 'Gavin O Connor' , 3 ,120,'film_15.jpg'),
    (NULL,'Harry Potter à l école des sorciers' , '2001-12-05' , 'Chris Columbus' , 4 ,125,'film_16.jpg'),
    (NULL ,'Harry Potter et la Chambre des secrets' , '2002-12-04' , 'Chris Columbus' , 4,125,'film_17.jpg'),
    (NULL ,'Harry Potter et le Prisonnier d Azkaban' , '2004-06-02' , 'Alfonso Cuarón' , 4 ,125,'film_18.jpg'),
    (NULL ,'Harry Potter et la Coupe de feu' , '2005-11-30' , 'Mike Newell' , 4 ,125,'film_19.jpg'),
    (NULL ,'Harry Potter et l Ordre du phénix' , '2009-07-15' , 'David Yates' , 4 ,125,'film_20.jpg');



sujet 7

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_reparation /type-reparation/show GET affiche les types de reparations retourne la vue show_type_reparation.html
add_type_reparation /type-reparation/add GET affiche le formulaire pour ajouter un type de reparation retourne la vue add_type_reparation.html
valid_add_type_reparation /type-reparation/add POST validation (soumission) du formulaire pour ajouter un type de reparation redirection sur la route /type-reparation/show
delete_type_reparation /type-reparation/delete GET suppression d’un type de reparation redirection sur la route /type-reparation/show
edit_type_reparation /type-reparation/edit GET affiche le formulaire pour modifier un type de reparation retourne la vue edit_type_reparation.html
valid_edit_type_reparation /type-reparation/edit POST validation (soumission) du formulaire pour modifier un type de reparation redirection sur la route /type-reparation/show
show_reparation /reparation/show GET affiche les reparations retourne la vue show_reparation.html
add_reparation /reparation/add GET affiche le formulaire pour ajouter une reparation retourne la vue add_reparation.html
valid_add_reparation /reparation/add POST validation (soumission) du formulaire pour ajouter une reparation redirection sur la route /reparation/show
delete_reparation /reparation/delete GET suppression d’une reparation redirection sur la route /reparation/show
edit_reparation /reparation/edit GET affiche le formulaire pour modifier une reparation retourne la vue edit_reparation.html
valid_edit_reparation /reparation/edit POST validation (soumission) du formulaire pour modifier une reparation redirection sur la route /reparation/show
filtre_reparation /reparation/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_reparation_filtre_show.html


########################################################### Sujet 7

typesReparations=[
    {'id':1,'libelleType':'entretien','logo':'logo_entretien.png'},
    {'id':2,'libelleType':'carrosserie','logo':'logo_carrosserie.png'},
    {'id':3,'libelleType':'mecanique','logo':'mecanique.png'},
    {'id':4,'libelleType':'autre','logo':'autre.png'}
]

reparations=[
    {'id':1,'libelleReparation':'Vidange' , 'immatVoiture':'RP-456-ZF' , 'prixReparation':'50' , 'dateReparation':'2014-10-15' , 'typeReparation_id':1, 'photo':'intervention_1.png'},
    {'id':2,'libelleReparation':'Vidange' , 'immatVoiture':'HK-856-SN' , 'prixReparation':'89' , 'dateReparation':'2005-05-06' , 'typeReparation_id':1, 'photo':'intervention_1.png'},
    {'id':3,'libelleReparation':'Vidange' , 'immatVoiture':'SD-479-EG' , 'prixReparation':'57' , 'dateReparation':'2007-08-08' , 'typeReparation_id':1, 'photo':'intervention_1.png'},
    {'id':4,'libelleReparation':'Vidange' , 'immatVoiture':'KU-458-VX' , 'prixReparation':'68' , 'dateReparation':'2007-04-13' , 'typeReparation_id':1, 'photo':'intervention_1.png'},
    {'id':5,'libelleReparation':'Remplac. pare brise' , 'immatVoiture':'LY-228-EY' , 'prixReparation':'250.00' , 'dateReparation':'2003-12-30' , 'typeReparation_id':2, 'photo':'intervention_2.png'},
    {'id':6,'libelleReparation':'Remplac. pare brise' , 'immatVoiture':'DS-865-KT' , 'prixReparation':'175.65' , 'dateReparation':'2011-05-06' , 'typeReparation_id':2, 'photo':'intervention_2.png'},
    {'id':7,'libelleReparation':'révision' , 'immatVoiture':'XG-554-DD' , 'prixReparation':'100' , 'dateReparation':'2010-03-01' , 'typeReparation_id':1, 'photo':'intervention_3.png'},
    {'id':8,'libelleReparation':'révision' , 'immatVoiture':'JK-103-DG' , 'prixReparation':'90' , 'dateReparation':'2001-05-06' , 'typeReparation_id':1, 'photo':'intervention_3.png'},
    {'id':9,'libelleReparation':'Changement pneus' , 'immatVoiture':'KU-458-VX' , 'prixReparation':'30.54' , 'dateReparation':'2007-04-13' , 'typeReparation_id':1, 'photo':'intervention_4.png'},
    {'id':10,'libelleReparation':'Changement pneus' , 'immatVoiture':'LY-228-EY' , 'prixReparation':'224.21' , 'dateReparation':'2009-12-30' , 'typeReparation_id':1, 'photo':'intervention_4.png'},
    {'id':11,'libelleReparation':'Changement pneus' , 'immatVoiture':'DS-865-KT' , 'prixReparation':'227.00' , 'dateReparation':'2011-05-06' , 'typeReparation_id':1, 'photo':'intervention_4.png'},
    {'id':12,'libelleReparation':'Remplacement plaq. de frein' , 'immatVoiture':'XG-554-DD' , 'prixReparation':'150' , 'dateReparation':'2010-03-01' , 'typeReparation_id':1, 'photo':'intervention_5.png'},
    {'id':13,'libelleReparation':'Tambour freins arr.' , 'immatVoiture':'CD-665-GZ' , 'prixReparation':'180' , 'dateReparation':'2012-05-06' ,  'typeReparation_id':3, 'photo':'intervention_6.png'},
    {'id':14,'libelleReparation':'Remplacement plaq. de frein' , 'immatVoiture':'KU-458-VX' , 'prixReparation':'100' , 'dateReparation':'2007-04-13' , 'typeReparation_id':1, 'photo':'intervention_5.png'},
    {'id':15,'libelleReparation':'Changement des cardans' , 'immatVoiture':'LY-228-EY' , 'prixReparation':'1300' , 'dateReparation':'2009-12-30' ,  'typeReparation_id':3, 'photo':'intervention_7.png'},
    {'id':16,'libelleReparation':'Changement boite de vitesse' , 'immatVoiture':'DS-865-KT' , 'prixReparation':'1400' , 'dateReparation':'2011-05-06', 'typeReparation_id':3, 'photo':'intervention_8.png'} ,
    {'id':17,'libelleReparation':'Remplac. courroie distribution' , 'immatVoiture':'XG-554-DD' , 'prixReparation':'440', 'dateReparation':'2010-03-01' ,  'typeReparation_id':3, 'photo':'intervention_9.png'} ,
    {'id':18,'libelleReparation':'Remplac. courroie distribution' , 'immatVoiture':'JK-103-DG' , 'prixReparation':'460' , 'dateReparation':'2001-05-06' ,  'typeReparation_id':3, 'photo':'intervention_9.png'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

# sujet 7 : reparation / type_reparation          **

INSERT INTO type_reparation(id_type, libelle_type, logo) VALUES
 (NULL, 'entretien', 'logo_entretien.png'),
 (NULL, 'carrosserie', 'logo_entretien.png'),
 (NULL, 'mecanique', 'logo_entretien.png'),
 (NULL, 'autre', 'logo_autre.png');

INSERT INTO reparation(id_reparation,libelle_reparation,immat_voiture,prix_reparation,date_reparation,type_reparation_id,photo) VALUES
(NULL,'Vidange','RP-456-ZF','50','2014-10-15',1,'intervention_1.png'),
(NULL,'Vidange','HK-856-SN','89','2005-05-06',1,'intervention_1.png'),
(NULL,'Vidange','SD-479-EG','57','2007-08-08',1,'intervention_1.png'),
(NULL,'Vidange','KU-458-VX','68','2007-04-13',1,'intervention_1.png'),
(NULL,'Remplac. pare brise','LY-228-EY','250.00','2003-12-30',2,'intervention_2.png'),
(NULL,'Remplac. pare brise','DS-865-KT','175.65','2011-05-06',2,'intervention_2.png'),
(NULL,'révision','XG-554-DD','100','2010-03-01',1,'intervention_3.png'),
(NULL,'révision','JK-103-DG','90','2001-05-06',1,'intervention_3.png'),
(NULL,'Changement pneus','KU-458-VX','30.54','2007-04-13',1,'intervention_4.png'),
(NULL,'Changement pneus','LY-228-EY','224.21','2009-12-30',1,'intervention_4.png'),
(NULL,'Changement pneus','DS-865-KT','227.00','2011-05-06',1,'intervention_4.png'),
(NULL,'Remplacement plaq. de frein','XG-554-DD','150','2010-03-01',1,'intervention_5.png'),
(NULL,'Tambour freins arr.','CD-665-GZ','180','2012-05-06',3,'intervention_6.png'),
(NULL,'Remplacement plaq. de frein','KU-458-VX','100','2007-04-13',1,'intervention_5.png'),
(NULL,'Changement des cardans','LY-228-EY','1300','2009-12-30',3,'intervention_6.png'),
(NULL,'Changement boite de vitesse','DS-865-KT','1400','2011-05-06',3,'intervention_7.png'),
(NULL,'Remplac. courroie distribution','XG-554-DD','440','2010-03-01',3,'intervention_8.png'),
(NULL,'Remplac. courroie distribution','JK-103-DG','460','2001-05-06',3,'intervention_9.png');



sujet 8

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_auteur /auteur/show GET affiche les auteurs retourne la vue show_auteur.html
add_auteur /auteur/add GET affiche le formulaire pour ajouter un auteur retourne la vue add_auteur.html
valid_add_auteur /auteur/add POST validation (soumission) du formulaire pour ajouter un auteur redirection sur la route /auteur/show
delete_auteur /auteur/delete GET suppression d’un auteur redirection sur la route /auteur/show
edit_auteur /auteur/edit GET affiche le formulaire pour modifier un auteur retourne la vue edit_auteur.html
valid_edit_auteur /auteur/edit POST validation (soumission) du formulaire pour modifier un auteur redirection sur la route /auteur/show
show_bande_dessinee /bande-dessinee/show GET affiche les bandes-dessinees retourne la vue show_bande_dessinee.html
add_bande_dessinee /bande-dessinee/add GET affiche le formulaire pour ajouter une bande dessinee retourne la vue add_bande_dessinee.html
valid_add_bande_dessinee /bande-dessinee/add POST validation (soumission) du formulaire pour ajouter une bande dessinee redirection sur la route /bande-dessinee/show
delete_bande_dessinee /bande-dessinee/delete GET suppression d’une bande dessinee redirection sur la route /bande-dessinee/show
edit_bande_dessinee /bande-dessinee/edit GET affiche le formulaire pour modifier une bande dessinee retourne la vue edit_bande_dessinee.html
valid_edit_bande_dessinee /bande-dessinee/edit POST validation (soumission) du formulaire pour modifier une bande dessinee redirection sur la route /bande-dessinee/show
filtre_bande_dessinee /bande-dessinee/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_bande_dessinee_filtre_show.html


########################################################### Sujet 8

auteurs=[
    {'id':1,'nomAuteur':'Goscinny-Uderzo'},
    {'id':2,'nomAuteur':'Roba-Rosy'},
    {'id':3,'nomAuteur':'Herge'},
    {'id':4,'nomAuteur':'Franquin - Delporte'}
]
bandesDessinees=[
    {'id':1,'serieBD':'Astérix et Obélix', 'auteur_id':1, 'titreBd':'La serpe d or', 'tome':1, 'dateParution':'2005-10-09', 'prixBd':'7.5', 'image':'bd1.png'},
    {'id':2,'serieBD':'Astérix et Obélix', 'auteur_id':1, 'titreBd':'Asterix et les Goths', 'tome':'2', 'dateParution': '2011-10-10', 'prixBd':'10', 'image':'bd2.png'},
    {'id':3,'serieBD':'Astérix et Obélix', 'auteur_id':1, 'titreBd':'Asterix et les gladiateurs', 'tome':'3', 'dateParution': '2004-10-11', 'prixBd':'5', 'image':'bd3.png'},
    {'id':4,'serieBD':'Astérix et Obélix', 'auteur_id':1, 'titreBd':'Tour de Gaule d astérix', 'tome':'4', 'dateParution': '2005-09-10', 'prixBd':'8.5', 'image':'bd20.png'},
    {'id':5,'serieBD':'Astérix et Obélix', 'auteur_id':1, 'titreBd':'La zizanie', 'tome':'15', 'dateParution': '2014-09-10', 'prixBd':'15', 'image':'bd4.png'},
    {'id':6,'serieBD':'Boule et Bill', 'auteur_id':2, 'titreBd':'60 gags de Boule et Bill', 'tome':1, 'dateParution':'2010-10-11', 'prixBd':'10', 'image':'bd5.png'},
    {'id':7,'serieBD':'Boule et Bill', 'auteur_id':2, 'titreBd':'Papa maman, Boule et... moi', 'tome':'8', 'dateParution':'2005-10-11', 'prixBd':'10.5', 'image':'bd6.png'},
    {'id':8,'serieBD':'Boule et Bill', 'auteur_id':2, 'titreBd':'Une vie de chien !', 'tome':'9', 'dateParution':'2012-10-11', 'prixBd':'20', 'image':'bd7.png'},
    {'id':9,'serieBD':'Boule et Bill', 'auteur_id':2, 'titreBd':'Attention chien marrant !', 'tome':'10', 'dateParution':'2013-10-11', 'prixBd':'10', 'image':'bd8.png'},
    {'id':10,'serieBD':'Boule et Bill', 'auteur_id':2, 'titreBd':'Jeux de Bill', 'tome':'11', 'dateParution':'2014-10-11', 'prixBd':'20', 'image':'bd9.png'},
    {'id':11,'serieBD':'Tintin', 'auteur_id':3, 'titreBd':'Tintin au pays des Soviets', 'tome':'1', 'dateParution':'2005-10-11', 'prixBd':'10', 'image':'bd10.png'},
    {'id':12,'serieBD':'Tintin', 'auteur_id':3, 'titreBd':'Tintin au Congo', 'tome':'2', 'dateParution':'2011-07-11', 'prixBd':'10', 'image':'bd11.png'},
    {'id':13,'serieBD':'Tintin', 'auteur_id':3, 'titreBd':'Tintin en Amérique', 'tome':'3', 'dateParution':'2012-10-11', 'prixBd':'10', 'image':'bd12.png'},
    {'id':14,'serieBD':'Tintin', 'auteur_id':3, 'titreBd':'Les Cigares du pharaon', 'tome':'4', 'dateParution':'2005-10-13', 'prixBd':'20', 'image':'bd13.png'},
    {'id':15,'serieBD':'Tintin', 'auteur_id':3, 'titreBd':'Le lotus bleu', 'tome':'5', 'dateParution':'2014-10-13', 'prixBd':'20', 'image':'bd14.png'},
    {'id':16,'serieBD':'Gaston Lagaffe', 'auteur_id':4, 'titreBd':'Gare aux gaffes', 'tome':1, 'dateParution':'2010-12-03', 'prixBd':'10', 'image':'bd15.png'},
    {'id':17,'serieBD':'Gaston Lagaffe', 'auteur_id':4, 'titreBd':'Gala de gaffes', 'tome':'2', 'dateParution':'2012-09-06', 'prixBd':'10', 'image':'bd16.png'},
    {'id':18,'serieBD':'Gaston Lagaffe', 'auteur_id':4, 'titreBd':'Gaffes à gogo', 'tome':'3', 'dateParution':'2014-08-06', 'prixBd':'8', 'image':'bd17.png'},
    {'id':19,'serieBD':'Gaston Lagaffe', 'auteur_id':4, 'titreBd':'Gaffes en gros', 'tome':'4', 'dateParution':'2013-04-06', 'prixBd':'10', 'image':'bd18.png'},
    {'id':20,'serieBD':'Gaston Lagaffe', 'auteur_id':4, 'titreBd':'Les gaffes d un gars gonflé', 'tome':'5', 'dateParution':'2005-03-06', 'prixBd':'8', 'image':'bd19.png'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- # sujet 8 :  bande_dessinee / auteur       **

INSERT INTO auteur (id_auteur, nom_auteur) VALUES
   (NULL,'Goscinny-Uderzo'),
   (NULL,'Roba-Rosy'),
   (NULL,'Herge'),
   (NULL,'Franquin - Delporte');

INSERT INTO bande_dessinee (id_bande_dessinee,serie_bd, auteur_id, titre_bd, tome, date_parution, prix_bd, image) VALUES
   (NULL,'Astérix et Obélix',1,'La serpe d or',1,'2005-10-09','7.5', 'bd1.png'),
   (NULL,'Astérix et Obélix',1,'Asterix et les Goths',2,'2011-10-10','10', 'bd2.png'),
   (NULL,'Astérix et Obélix',1,'Asterix et les gladiateurs',3,'2004-10-11','5', 'bd3.png'),
   (NULL,'Astérix et Obélix',1,'Tour de Gaule d astérix',4,'2005-09-10','5', 'bd20.png'),
   (NULL,'Astérix et Obélix',1,'La zizanie',15,'2014-09-10','15', 'bd4.png'),
   (NULL,'Boule et Bill',2,'60 gags de Boule et Bill',1,'2010-10-11','10', 'bd5.png'),
   (NULL,'Boule et Bill',2,'Papa maman, Boule et... moi',8,'2005-10-11','10.5', 'bd6.png'),
   (NULL,'Boule et Bill',2,'Une vie de chien !',9,'2012-10-11','20', 'bd7.png'),
   (NULL,'Boule et Bill',2,'Attention chien marrant !',10,'2013-10-11','10', 'bd8.png'),
   (NULL,'Boule et Bill',2,'Jeux de Bill',11,'2014-10-11','20', 'bd9.png'),
   (NULL,'Tintin',3,'Tintin au pays des Soviets',1,'2005-10-11','10', 'bd10.png'),
   (NULL,'Tintin',3,'Tintin au Congo',2,'2011-07-11','10', 'bd11.png' ),
   (NULL,'Tintin',3,'Tintin en Amérique',3,'2012-10-11','10', 'bd12.png'),
   (NULL,'Tintin',3,'Les Cigares du pharaon',4,'2005-10-13','20', 'bd13.png'),
   (NULL,'Tintin',3,'Le lotus bleu',5,'2014-10-13','20', 'bd14.png'),
   (NULL,'Gaston Lagaffe',4,'Gare aux gaffes',1,'2010-12-03','10', 'bd15.png'),
   (NULL,'Gaston Lagaffe',4,'Gala de gaffes',2,'2012-09-06','10', 'bd16.png'),
   (NULL,'Gaston Lagaffe',4,'Gaffes à gogo',3,'2014-08-06','8', 'bd17.png'),
   (NULL,'Gaston Lagaffe',4,'Gaffes en gros',4,'2013-04-06','10', 'bd18.png'),
   (NULL,'Gaston Lagaffe',4,'Les gaffes d un gars gonflé',5,'2005-03-06','8', 'bd19.png');



sujet 9

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_salle /salle-info/show GET affiche les types d’ordinateurs retourne la vue show_salle.html
add_salle /salle-info/add GET affiche le formulaire pour ajouter une salle retourne la vue add_salle.html
valid_add_salle /salle-info/add POST validation (soumission) du formulaire pour ajouter une salle redirection sur la route /salle-info/show
delete_salle /salle-info/delete GET suppression d’une salle redirection sur la route /salle-info/show
edit_salle /salle-info/edit GET affiche le formulaire pour modifier une salle retourne la vue edit_salle.html
valid_edit_salle /salle-info/edit POST validation (soumission) du formulaire pour modifier une salle redirection sur la route /salle-info/show
show_ordinateur /ordinateur/show GET affiche les ordinateurs retourne la vue show_ordinateur.html
add_ordinateur /ordinateur/add GET affiche le formulaire pour ajouter un ordinateur retourne la vue add_ordinateur.html
valid_add_ordinateur /ordinateur/add POST validation (soumission) du formulaire pour ajouter un ordinateur redirection sur la route /ordinateur/show
delete_ordinateur /ordinateur/delete GET suppression d’un ordinateur redirection sur la route /ordinateur/show
edit_ordinateur /ordinateur/edit GET affiche le formulaire pour modifier un ordinateur retourne la vue edit_ordinateur.html
valid_edit_ordinateur /ordinateur/edit POST validation (soumission) du formulaire pour modifier un ordinateur redirection sur la route /ordinateur/show
filtre_ordinateur /ordinateur/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_ordinateur_filtre_show.html


########################################################### Sujet 9

sallesInfo=[
    {'id':1,'nomSalle':'Alpha', 'etage':1 },
    {'id':2,'nomSalle':'Mac', 'etage':2 },
    {'id':3,'nomSalle':'DEC', 'etage':1 }
]

ordinateurs=[
    {'id':1,'marqueOrdinateur':'HP', 'nomMachine':'HP-1', 'ram':'32' , 'dateAchat':'2018-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':2,'marqueOrdinateur':'HP', 'nomMachine':'HP-2', 'ram':'32' , 'dateAchat':'2018-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':3,'marqueOrdinateur':'HP', 'nomMachine':'HP-3', 'ram':'32' , 'dateAchat':'2018-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':4,'marqueOrdinateur':'HP', 'nomMachine':'HP-4', 'ram':'32' , 'dateAchat':'2018-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':5,'marqueOrdinateur':'HP', 'nomMachine':'HP-5', 'ram':'32' , 'dateAchat':'2019-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':6,'marqueOrdinateur':'HP', 'nomMachine':'HP-6', 'ram':'32' , 'dateAchat':'2019-02-15','salle_id':1, 'prix':'1000', 'image':'hp.jpg'},
    {'id':7,'marqueOrdinateur':'Apple', 'nomMachine':'iMac3', 'ram':'32' , 'dateAchat':'2020-10-16','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':8,'marqueOrdinateur':'Apple', 'nomMachine':'iMac1', 'ram':'32' , 'dateAchat':'2020-10-16','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':9,'marqueOrdinateur':'Apple', 'nomMachine':'iMac2', 'ram':'32' , 'dateAchat':'2020-10-16','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':10,'marqueOrdinateur':'Apple', 'nomMachine':'iMac4', 'ram':'32' , 'dateAchat':'2018-01-30','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':11,'marqueOrdinateur':'Apple', 'nomMachine':'MacPro2', 'ram':'64' , 'dateAchat':'2019-01-30','salle_id':2, 'prix':'1700','image':'macpro.jpg'},
    {'id':12,'marqueOrdinateur':'Apple', 'nomMachine':'MacPro1', 'ram':'64' , 'dateAchat':'2019-01-30','salle_id':2, 'prix':'1700','image':'macpro.jpg'},
    {'id':13,'marqueOrdinateur':'Apple', 'nomMachine':'iMac7', 'ram':'32' , 'dateAchat':'2018-01-30','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':14,'marqueOrdinateur':'Apple', 'nomMachine':'iMac8', 'ram':'16' , 'dateAchat':'2018-01-30','salle_id':2, 'prix':'1500','image':'imac.jpg'},
    {'id':15,'marqueOrdinateur':'Dell', 'nomMachine':'Dell-1', 'ram':'32' , 'dateAchat':'2018-07-10','salle_id':3, 'prix':'1100','image':'dell.jpg'},
    {'id':16,'marqueOrdinateur':'Dell', 'nomMachine':'Dell-2', 'ram':'32' , 'dateAchat':'2018-07-10','salle_id':3, 'prix':'1100','image':'dell.jpg'},
    {'id':17,'marqueOrdinateur':'Dell', 'nomMachine':'Dell-3', 'ram':'32' , 'dateAchat':'2018-07-10','salle_id':3, 'prix':'1100','image':'dell.jpg'},
    {'id':18,'marqueOrdinateur':'Dell', 'nomMachine':'Dell-4', 'ram':'32' , 'dateAchat':'2018-07-10','salle_id':3, 'prix':'1100','image':'dell.jpg'},
    {'id':19,'marqueOrdinateur':'Asus', 'nomMachine':'Asus-6', 'ram':'16' , 'dateAchat':'2018-11-02','salle_id':3, 'prix':'1100','image':'asus.jpg'},
    {'id':20,'marqueOrdinateur':'Asus', 'nomMachine':'Asus-7', 'ram':'16' , 'dateAchat':'2019-11-02','salle_id':3, 'prix':'900','image':'asus.jpg'},
    {'id':21,'marqueOrdinateur':'Asus', 'nomMachine':'Asus-8', 'ram':'16' , 'dateAchat':'2019-11-02','salle_id':3, 'prix':'900','image':'asus.jpg'},
    {'id':22,'marqueOrdinateur':'Asus', 'nomMachine':'Asus-9', 'ram':'16' , 'dateAchat':'2019-11-02','salle_id':3, 'prix':'900','image':'asus.jpg'},
    {'id':23,'marqueOrdinateur':'MSI', 'nomMachine':'MSI-1', 'ram':'16' , 'dateAchat':'2018-02-18','salle_id':3, 'prix':'800','image':'msi.jpg'},
    {'id':24,'marqueOrdinateur':'MSI', 'nomMachine':'MSI-2', 'ram':'16' , 'dateAchat':'2018-02-18','salle_id':3, 'prix':'800','image':'msi.jpg'},
    {'id':25,'marqueOrdinateur':'MSI', 'nomMachine':'MSI-3', 'ram':'16' , 'dateAchat':'2018-02-18','salle_id':3, 'prix':'800','image':'msi.jpg'},
    {'id':26,'marqueOrdinateur':'MSI', 'nomMachine':'MSI-4', 'ram':'16' , 'dateAchat':'2018-02-18','salle_id':3, 'prix':'800','image':'msi.jpg'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- # sujet 9 :  ordinateur / salle_info       **


INSERT INTO salle_info (id_salle, nom_salle, etage) VALUES
(NULL, 'Alpha',1),
(NULL, 'Mac',2),
(NULL, 'DEC',1);

INSERT INTO ordinateur (id_ordinateur, marque_ordinateur, nom_machine, ram, date_achat, salle_id, prix, image) VALUES
(NULL, 'HP', 'HP-1', 32, '2018-02-15', 1, 1000,'hp.jpg'),
(NULL, 'HP', 'HP-2', 32, '2018-02-15', 1, 1000,'hp.jpg'),
(NULL, 'HP', 'HP-3', 32, '2018-02-15', 1, 1000,'hp.jpg'),
(NULL, 'HP', 'HP-4', 32, '2018-02-15', 1, 1000,'hp.jpg'),
(NULL, 'HP', 'HP-5', 32, '2019-02-15', 1, 1000,'hp.jpg'),
(NULL, 'HP', 'HP-6', 32, '2019-02-15', 1, 1000,'hp.jpg'),
(NULL, 'Apple', 'iMac3', 32, '2020-10-16', 2, 1500,'imac.jpg'),
(NULL, 'Apple', 'iMac1', 32, '2020-10-16', 2, 1500,'imac.jpg'),
(NULL, 'Apple', 'iMac2', 32, '2020-10-16', 2, 1500,'imac.jpg'),
(NULL, 'Apple', 'iMac4', 32, '2018-01-30', 2, 1500,'imac.jpg'),
(NULL, 'Apple', 'MacPro2', 64, '2019-01-30', 2, 1700,'macpro.jpg'),
(NULL, 'Apple', 'MacPro1', 64, '2019-01-30', 2, 1700,'macpro.jpg'),
(NULL, 'Apple', 'iMac7', 32, '2018-01-30', 2, 1500,'imac.jpg'),
(NULL, 'Apple', 'iMac8', 16, '2018-01-30', 2, 1500,'imac.jpg'),
(NULL, 'Dell', 'Dell-1', 32, '2018-07-10', 3, 1100,'dell.jpg'),
(NULL, 'Dell', 'Dell-2', 32, '2018-07-10', 3, 1100,'dell.jpg'),
(NULL, 'Dell', 'Dell-3', 32, '2018-07-10', 3, 1100,'dell.jpg'),
(NULL, 'Dell', 'Dell-4', 32, '2018-07-10', 3, 1100,'dell.jpg'),
(NULL, 'Asus', 'Asus-6', 16, '2018-11-02', 3, 1100,'asus.jpg'),
(NULL, 'Asus', 'Asus-7', 16, '2019-11-02', 3, 900,'asus.jpg'),
(NULL, 'Asus', 'Asus-8', 16, '2019-11-02', 3, 900,'asus.jpg'),
(NULL, 'Asus', 'Asus-9', 16, '2019-11-02', 3, 900,'asus.jpg'),
(NULL, 'MSI', 'MSI-1', 16, '2018-02-18', 3, 800,'msi.jpg'),
(NULL, 'MSI', 'MSI-2', 16, '2018-02-18', 3, 800,'msi.jpg'),
(NULL, 'MSI', 'MSI-3', 16, '2018-02-18', 3, 800,'msi.jpg'),
(NULL, 'MSI', 'MSI-4', 16, '2018-02-18', 3, 800,'msi.jpg');



sujet 10

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_commercant /type-commercant/show GET affiche les types de commercants retourne la vue show_type_commercant.html
add_type_commercant /type-commercant/add GET affiche le formulaire pour ajouter un type de commercant retourne la vue add_type_commercant.html
valid_add_type_commercant /type-commercant/add POST validation (soumission) du formulaire pour ajouter un type de commercant redirection sur la route /type-commercant/show
delete_type_commercant /type-commercant/delete GET suppression d’un type de commercant redirection sur la route /type-commercant/show
edit_type_commercant /type-commercant/edit GET affiche le formulaire pour modifier un type de commercant retourne la vue edit_type_commercant.html
valid_edit_type_commercant /type-commercant/edit POST validation (soumission) du formulaire pour modifier un type de commercant redirection sur la route /type-commercant/show
show_commercant /commercant/show GET affiche les commercants retourne la vue show_commercant.html
add_commercant /commercant/add GET affiche le formulaire pour ajouter un commercant retourne la vue add_commercant.html
valid_add_commercant /commercant/add POST validation (soumission) du formulaire pour ajouter un commercant redirection sur la route /commercant/show
delete_commercant /commercant/delete GET suppression d’un commercant redirection sur la route /commercant/show
edit_commercant /commercant/edit GET affiche le formulaire pour modifier un commercant retourne la vue edit_commercant.html
valid_edit_commercant /commercant/edit POST validation (soumission) du formulaire pour modifier un commercant redirection sur la route /commercant/show
filtre_commercant /commercant/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_commercant_filtre_show.html


typeCommercants=[
    {'id':1,'libelleType':'Boucherie'},
    {'id':2,'libelleType':'Boulangerie'},
    {'id':3,'libelleType':'Maraicher'},
    {'id':4,'libelleType':'Fromagerie'}
]
commercants=[
    {'id':1,'nomCommercant':'Boucherie Rousselet', 'dateInstallation':'2010-1-1','prixLocation':'500', 'adresse':'marché des vosges' ,'typeCommercant_id' :1,'image': 'boucherie_rousselet.jpg'},
    {'id':2,'nomCommercant':'Boulanger Peslier', 'dateInstallation':'2009-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :2,'image': 'boulanger_peslier.jpg'},
    {'id':3,'nomCommercant':'Patisserie Perez', 'dateInstallation':'2014-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :2,'image': 'patisserie_perez.jpg'},
    {'id':4,'nomCommercant':'Maraicher Ravier', 'dateInstallation':'2014-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :3,'image': 'maraicher_ravier.jpg'},
    {'id':5,'nomCommercant':'Bon Pain Woltz', 'dateInstallation':'2013-1-1','prixLocation':'700', 'adresse':'marché des vosges' ,'typeCommercant_id' :2,'image': 'bon_pain_woltz.jpg'},
    {'id':6,'nomCommercant':'Caly Maraicher', 'dateInstallation':'2014-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :3,'image': 'caly_maraicher.jpg'},
    {'id':7,'nomCommercant':'Boucherie Caly', 'dateInstallation':'2013-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :1,'image': 'boucherie_caly.jpg'},
    {'id':8,'nomCommercant':'Fromagerie mervant', 'dateInstallation':'2013-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :4,'image': 'fromagerie_mervant.jpg'},
    {'id':9,'nomCommercant':'Boulangerie Laure', 'dateInstallation':'2013-1-1','prixLocation':'800', 'adresse':'marché des vosges' ,'typeCommercant_id' :2,'image': 'boulangerie_laure.jpg'},
    {'id':10,'nomCommercant':'Boucherie Laurent', 'dateInstallation':'2013-1-1','prixLocation':'800', 'adresse':'marché des vosges' ,'typeCommercant_id' :1,'image': 'boucherie_laurent.jpg'},
    {'id':11,'nomCommercant':'Fromagerie dupuis', 'dateInstallation':'2014-1-1','prixLocation':'600', 'adresse':'marché des vosges' ,'typeCommercant_id' :4,'image': 'fromagerie_dupuis.jpg'}
]



archive des fichiers d’images de ce sujet



livrable 2 (vacances Noel)

-- # sujet 10 : commercant  type_commercant         **

INSERT INTO type_commercant(id_type_com, libelle_type_com) VALUES
    (NULL,'Boucherie'),
    (NULL,'Boulangerie'),
    (NULL,'Maraicher'),
    (NULL,'Fromagerie');

INSERT INTO commercant(id_com, nom_commercant, date_installation, prix_location, adresse_marche, type_com_id, image) VALUES
    (NULL,'Boucherie rousselet','2010-1-1','500.00','Marché des Vosges',1,'boucherie_rousselet.jpg'),
    (NULL,'Boulanger Peslier','2009-1-1','600.00','Marché des Vosges',2,'boulanger_peslier.jpg'),
    (NULL,'Patisserie Perez','2014-1-1','600.00','Marché des Vosges',2,'patisserie_perez.jpg'),
    (NULL,'Maraîcher Ravier','2014-1-1','600.00','Marché des Vosges',3,'maraicher_ravier.jpg'),
    (NULL,'Bon Pain Woltz','2013-1-1','700.00','Marché des Vosges',2, 'bon_pain_woltz.jpg'),
    (NULL,'Caly Maraicher','2014-1-1','600.00','Marché des Vosges',3,'caly_maraicher.jpg'),
    (NULL,'Boucherie Caly','2013-1-1','600.00','Marché des Vosges',1,'boucherie_caly.jpg'),
    (NULL,'Fromagerie Mervant','2013-1-1','600.00','Marché des Vosges',4,'fromagerie_mervant.jpg'),
    (NULL,'Boulangerie Laure','2013-1-1','800.00','Marché des Vosges',2,'boulangerie_laure.jpg'),
    (NULL,'Boulangerie Laurent','2013-1-1','800.00','Marché des Vosges',1,'boucherie_laurent.jpg'),
    (NULL,'Fromagerie Dupuis','2014-1-1','600.00','Marché des Vosges',4,'fromagerie_dupuis.jpg');



sujet 11

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_categorie_depense /categorie-depense/show GET affiche les les categories de dépenses retourne la vue show_categorie_depense.html
add_categorie_depense /categorie-depense/add GET affiche le formulaire pour ajouter une categorie de dépenses retourne la vue add_categorie_depense.html
valid_add_categorie_depense /categorie-depense/add POST validation (soumission) du formulaire pour ajouter une categorie de dépenses redirection sur la route /categorie-depense/show
delete_categorie_depense /categorie-depense/delete GET suppression d’une categorie de dépenses redirection sur la route /categorie-depense/show
edit_categorie_depense /categorie-depense/edit GET affiche le formulaire pour modifier une categorie de dépenses retourne la vue edit_categorie_depense.html
valid_edit_categorie_depense /categorie-depense/edit POST validation (soumission) du formulaire pour modifier une categorie de dépenses redirection sur la route /categorie-depense/show
show_depense /depense/show GET affiche les dépenses retourne la vue show_depense.html
add_depense /depense/add GET affiche le formulaire pour ajouter une dépense retourne la vue add_depense.html
valid_add_depense /depense/add POST validation (soumission) du formulaire pour ajouter une dépense redirection sur la route /depense/show
delete_depense /depense/delete GET suppression d’une dépense redirection sur la route /depense/show
edit_depense /depense/edit GET affiche le formulaire pour modifier une dépense retourne la vue edit_depense.html
valid_edit_depense /depense/edit POST validation (soumission) du formulaire pour modifier une dépense redirection sur la route /depense/show
filtre_depense /depense/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_depense_filtre_show.html




# ########################################################### Sujet  11

categoriesDepenses=[
    {'id':1,'libelleCategorie':'Autoroute', 'budget':'déplacement'},
    {'id':2,'libelleCategorie':'Carburant', 'budget':'déplacement'},
    {'id':3,'libelleCategorie':'Repas', 'budget':'hébergement'},
    {'id':4,'libelleCategorie':'Hébergement', 'budget':'hébergement'}
]
depenses=[
    {'id':1, 'destinataireDepense':'Service d\'autoroute Vinci','montant':'35','description':'Péages Belfort-Lyon', 'dateDepense':'2014-04-20' , 'categorieDepense_id':1, 'image':'img_depense_1.png'},
    {'id':2, 'destinataireDepense':'Organisation ACD','montant':'410.47','description':'Comité de direction', 'dateDepense':'2014-07-03' , 'categorieDepense_id':3, 'image':'img_depense_2.png'},
    {'id':3, 'destinataireDepense':'intendance UTBM','montant':'120','description':'forum étudiants', 'dateDepense':'2014-08-18',  'categorieDepense_id':4, 'image':'img_depense_4.png'},
    {'id':4, 'destinataireDepense':'Autoroute Ouest','montant':'25.5','description':'Péages Paris-Nantes', 'dateDepense':'2014-07-28' , 'categorieDepense_id':1, 'image':'img_depense_3.png'},
    {'id':5, 'destinataireDepense':'TotalEnergies','montant':'45','description':'Sans plomb 95 35L', 'dateDepense':'2014-04-14' , 'categorieDepense_id':2, 'image':'img_depense_3.png', 'image':'img_depense_5.png'},
    {'id':6, 'destinataireDepense':'Hilton Hotels & Resorts','montant':'842','description':'Hotel Hilton Paris', 'dateDepense':'2014-01-06' , 'categorieDepense_id':4, 'image':'img_depense_6.png'},
    {'id':7, 'destinataireDepense':'Service d\'autoroute Vinci','montant':'42.00','description':'Péages Belfort-Paris', 'dateDepense':'2014-12-07' , 'categorieDepense_id':1, 'image':'img_depense_1.png'},
    {'id':8, 'destinataireDepense':'TotalEnergies','montant':'75','description':'Diezel 60L', 'dateDepense':'2014-10-31' , 'categorieDepense_id':2, 'image':'img_depense_3.png'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

# sujet 11 : depense / categorie_depense         

INSERT INTO categorie_depense(id_categorie, libelle_categorie, budget)VALUES
(NULL,'Autoroute', 'déplacement'),
(NULL,'Carburant', 'déplacement'),
(NULL,'Repas', 'hébergement'),
(NULL,'Hébergement', 'hébergement');

INSERT INTO depense(id_depense, destinataire_depense, montant, description, date_depense,categorie_id, destinataire,image)  VALUES
(NULL,'Service d\'autoroute Vinci',35,'Péages Belfort-Lyon','2014-04-20',1,'Autoroute Paris/Rhone','img_depense_1.png'),
(NULL,'Organisation ACD',410.47,'Comité de direction','2014-07-03',3,'img_depense_2.png'),
(NULL,'intendance UTBM',120,'forum étudiants','2014-08-18',1,img_depense_4.png'),
(NULL,'Autoroute Ouest',25.5,'Péages Paris-Nantes','2014-07-28',1,'img_depense_3.png'),
(NULL,'TotalEnergies',45,'Sans plomb 95 35L','2014-04-14',2,'img_depense_5.png'),
(NULL,'Hilton Hotels & Resorts' ,842,'Hotel mercure Paris','2014-01-06',4,'Hotel Hilton Paris,'img_depense_6.png'),
(NULL,'Service d\'autoroute Vinci' ,42.00,'Péages Belfort-Paris','2014-12-07',1,'img_depense_1.png'),
(NULL,'TotalEnergies' ,75,'Diezel 60L','2014-10-31',2,'img_depense_3.png');



sujet 12

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_theatre /theatre/show GET affiche les theatres retourne la vue show_theatre.html
add_theatre /theatre/add GET affiche le formulaire pour ajouter un theatre retourne la vue add_theatre.html
valid_add_theatre /theatre/add POST validation (soumission) du formulaire pour ajouter un theatre redirection sur la route /theatre/show
delete_theatre /theatre/delete GET suppression d’un theatre redirection sur la route /theatre/show
edit_theatre /theatre/edit GET affiche le formulaire pour modifier un theatre retourne la vue edit_theatre.html
valid_edit_theatre /theatre/edit POST validation (soumission) du formulaire pour modifier un theatre redirection sur la route /theatre/show
show_spectacle /spectacle-representation/show GET affiche les spectacles retourne la vue show_spectacle.html
add_spectacle /spectacle-representation/add GET affiche le formulaire pour ajouter un spectacle retourne la vue add_spectacle.html
valid_add_spectacle /spectacle-representation/add POST validation (soumission) du formulaire pour ajouter un spectacle redirection sur la route /spectacle-representation/show
delete_spectacle /spectacle-representation/delete GET suppression d’un spectacle redirection sur la route /spectacle-representation/show
edit_spectacle /spectacle-representation/edit GET affiche le formulaire pour modifier un spectacle retourne la vue edit_spectacle.html
valid_edit_spectacle /spectacle-representation/edit POST validation (soumission) du formulaire pour modifier un spectacle redirection sur la route /spectacle-representation/show
filtre_spectacle /spectacle-representation/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_spectacle_filtre_show.html


# ########################################################### Sujet 12

theatres=[
    {'id':1,'nomTheatre':'Le Granit', 'adresseTheatre':'1 faubourg de Montbéliard 90000 Belfort', 'telephoneTheatre':'0384586767'},
    {'id':2,'nomTheatre':'Aktéon', 'adresseTheatre':'11 rue du Général-Blaise 70000 Paris', 'telephoneTheatre':'0143387462'},
    {'id':3,'nomTheatre':'Théâtre National de Strasbourg', 'adresseTheatre':'1 Avenue de la Marseillaise 67005 Strasbourg', 'telephoneTheatre':'0388248800'},
    {'id':4,'nomTheatre':'Les deux scènes', 'adresseTheatre':'49 Rue Megevand 25000 Besançon', 'telephoneTheatre':'0381878197'},
]


spectaclesRepresentations=[
    {'id' : 1,'titreSpectacle':'LE PRINCE (Tous les hommes sont méchants)', 'dateRepresentation':'2014-10-14', 'horaire':'de 20H à 21H30', 'prix':'9','theatre_id':'1', 'affiche':'spectacle_1.png' },
    {'id' : 2,'titreSpectacle':'Le chemin du sepent', 'dateRepresentation':'2014-10-18', 'horaire':'de 20H à 21H30', 'prix':'8','theatre_id':'1', 'affiche':'spectacle_2.png' },
    {'id' : 3,'titreSpectacle':'Le cabinet des curiosités', 'dateRepresentation':'2014-11-13', 'horaire':'de 20H à 21H30', 'prix':'12','theatre_id':'2', 'affiche':'spectacle_3.png' },
    {'id' : 4,'titreSpectacle':'Trois actrice dont une', 'dateRepresentation':'2014-11-16', 'horaire':'de 20H à 21H30', 'prix':'10','theatre_id':'2', 'affiche':'spectacle_4.png' },
    {'id' : 5,'titreSpectacle':'Ainsi se laissa t-il vivre', 'dateRepresentation':'2014-11-08', 'horaire':'de 20H à 21H30', 'prix':'13','theatre_id':'3', 'affiche':'spectacle_5.png' },
    {'id' : 6,'titreSpectacle':'Lancelot du lac', 'dateRepresentation':'2014-12-02', 'horaire':'de 20H à 21H30', 'prix':'15','theatre_id':'3', 'affiche':'spectacle_6.png' },
    {'id' : 7,'titreSpectacle':'Si oui, oui, sinon, non', 'dateRepresentation':'2014-11-04', 'horaire':'de 20H à 21H30', 'prix':'12','theatre_id':'3', 'affiche':'spectacle_7.png' },
    {'id' : 8,'titreSpectacle':'Tiger tiger burning bright', 'dateRepresentation':'2014-10-16', 'horaire':'de 20H à 21H30', 'prix':'15','theatre_id':'4', 'affiche':'spectacle_8.png' }
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- sujet 12 : spectacle_representation / theatre        **


INSERT INTO theatre (id_theatre, nom_theatre, adresse_theatre, telephone_theatre) VALUES
    (NULL,'Le Granit', '1 faubourg de Montbéliard 90000 Belfort', '0384586767'),
    (NULL,'Aktéon', '11 rue du Général-Blaise 70000 Paris', '0143387462'),
    (NULL,'Théâtre National de Strasbourg', '1 Avenue de la Marseillaise 67005 Strasbourg', '0388248800'),
    (NULL,'Les deux scènes', '49 Rue Megevand 25000 Besançon', '0381878197');

INSERT INTO spectacle_representation (id_spectacle, titre_spectacle, date_representation, horaire, prix, theatre_id, affiche) VALUES
    (NULL,'LE PRINCE (Tous les hommes sont méchants)', '2014-10-14', 'de 20H à 21H30', '9','1','spectacle_1.png' ),
    (NULL,'Le chemin du serpent', '2014-10-18', 'de 20H à 21H30', '8','1','spectacle_2.png' ),
    (NULL,'Le cabinet des curiosités', '2014-11-13', 'de 20H à 21H30', '12','2','spectacle_3.png' ),
    (NULL,'Trois actrice dont une', '2014-11-16', 'de 20H à 21H30', '10','2','spectacle_4.png' ),
    (NULL,'Ainsi se laissa t-il vivre', '2014-11-08', 'de 20H à 21H30', '13','3','spectacle_5.png' ),
    (NULL,'Lancelot du lac', '2014-12-02', 'de 20H à 21H30', '15','3','spectacle_6.png' ),
    (NULL,'Si oui, oui, sinon, non', '2014-11-04', 'de 20H à 21H30', '12','3','spectacle_7.png' ),
    (NULL,'Tiger tiger burning bright', '2014-10-16', 'de 20H à 21H30', '15','4','spectacle_8.png' );



sujet 13

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_station /station-ski/show GET affiche les stations retourne la vue show_station.html
add_station /station-ski/add GET affiche le formulaire pour ajouter une station retourne la vue add_station.html
valid_add_station /station-ski/add POST validation (soumission) du formulaire pour ajouter une station redirection sur la route /station-ski/show
delete_station /station-ski/delete GET suppression d’une station redirection sur la route /station-ski/show
edit_station /station-ski/edit GET affiche le formulaire pour modifier une station retourne la vue edit_station.html
valid_edit_station /station-ski/edit POST validation (soumission) du formulaire pour modifier une station redirection sur la route /station-ski/show
show_hotel /hotel/show GET affiche les hotels retourne la vue show_hotel.html
add_hotel /hotel/add GET affiche le formulaire pour ajouter les informations sur un hotel retourne la vue add_hotel.html
valid_add_hotel /hotel/add POST validation (soumission) du formulaire pour ajouter les informations sur un hotel redirection sur la route /hotel/show
delete_hotel /hotel/delete GET suppression d’un hotel redirection sur la route /hotel/show
edit_hotel /hotel/edit GET affiche le formulaire pour modifier les informations sur un hotel retourne la vue edit_hotel.html
valid_edit_hotel /hotel/edit POST validation (soumission) du formulaire pour modifier les informations sur un hotel redirection sur la route /hotel/show
filtre_hotel /hotel/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_hotel_filtre_show.html


# ########################################################### Sujet  13

stationsSki=[
    { 'id' : 1, 'nomStation':'OZAN', 'altitude' :'206'},
    { 'id' : 2, 'nomStation':'CORMORANCHE-SUR-SAONE', 'altitude' :'211'},
    { 'id' : 3, 'nomStation':'PLAGNE', 'altitude' :'922'},
    { 'id' : 4, 'nomStation':'TOSSIAT', 'altitude' :'501'},
    { 'id' : 5, 'nomStation':'POUILLAT', 'altitude' :'770'}
]

hotels=[
    {'id' : 1, 'nomHotel':'Le saint joseph ', 'nombreChambre' :'16' ,  'categorie' :'2' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-02-03' ,  'station_id' :1, 'photo':'le-saint-joseph.jpg'},
    {'id' : 2, 'nomHotel':'La castana', 'nombreChambre' :'83' ,  'categorie' :'3' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-28' ,  'station_id' :2, 'photo':'la-castana.jpg'},
    {'id' : 3, 'nomHotel':'Grand Baraille', 'nombreChambre' :'46' ,  'categorie' :'3' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-05' ,  'station_id' :3, 'photo':'grand-baraille.jpg'},
    {'id' : 4, 'nomHotel':'Pershing hall', 'nombreChambre' :'26' ,  'categorie' :'4' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-29' ,  'station_id' :4, 'photo':'pershing-hall.jpg'},
    {'id' : 5, 'nomHotel':'Villa Gallici', 'nombreChambre' :'470' ,  'categorie' :'1' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-30' ,  'station_id' :5, 'photo':'villa-gallici.jpg'},
    {'id' : 6, 'nomHotel':'Mandarin oriental party', 'nombreChambre' :'14' ,  'categorie' :'4' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-29' ,  'station_id' :1, 'photo':'mandarin-oriental-party.jpg'},
    {'id' : 7, 'nomHotel':'Roch hotel et spa', 'nombreChambre' :'71' ,  'categorie' :'4' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-30' ,  'station_id' :2, 'photo':'roch-hotel-et-spa.jpg'},
    {'id' : 8, 'nomHotel':'Villa lara', 'nombreChambre' :'570' ,  'categorie' :'1' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-23' ,  'station_id' :3, 'photo':'villa-lara.jpg'},
    {'id' : 9, 'nomHotel':'La reserve', 'nombreChambre' :'6' ,  'categorie' :'5' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-24' ,  'station_id' :4, 'photo':'la-reserve.jpg'},
    {'id' : 10, 'nomHotel':'residence de france', 'nombreChambre' :'65' ,  'categorie' :'5' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-29' ,  'station_id' :1, 'photo':''},
    {'id' : 11, 'nomHotel':'antibes les beau près' ,  'nombreChambre' :'36' ,  'categorie' :'4' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-21' ,  'station_id' :2, 'photo':'residence-de-france.jpg'},
    {'id' : 12, 'nomHotel':'le savoie', 'nombreChambre' :'585' ,  'categorie' :'1' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-18' ,  'station_id' :3, 'photo':'antibes-les-beau-près.jpg'},
    {'id' : 13, 'nomHotel':'hotel juana', 'nombreChambre' :'68' ,  'categorie' :'3' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-16' ,  'station_id' :4, 'photo':'hotel-juana.jpg'},
    {'id' : 14, 'nomHotel':'le sereno', 'nombreChambre' :'455' ,  'categorie' :'3' ,  'prixBaseChambre':'51.5', 'dateCreation' :'2017-04-14' ,  'station_id' :5, 'photo':'le-sereno.jpg'},
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- # sujet 13 : hotel / station_ski       **

INSERT INTO station_ski(id_station, nom_station, altitude)
VALUES  (NULL, 'OZAN', 206),
        (NULL, 'CORMORANCHE-SUR-SAONE', 211),
        (NULL, 'PLAGNE', 922),
        (NULL, 'TOSSIAT', 501),
        (NULL, 'POUILLAT', 770);

INSERT INTO hotel (id_hotel, nom_hotel, nombre_chambre, categorie, prix_base_chambre, date_creation, photo, station_id)
VALUES  (NULL, 'Le Saint joseph', 16, 2, 51.5,'2017-02-03', 'le-saint-joseph.jpg',1),
        (NULL, 'La Castana', 83, 3, 62,'2017-04-28',  'la-castana.jpg', 2),
        (NULL, 'Grand Baraille', 46, 3, 78.5,'2017-04-05',  'grand-baraille.jpg', 3),
        (NULL, 'Pershing Hall', 26, 4, 83,'2017-04-29', 'pershing-hall.jpg',4),
        (NULL, 'Villa Gallici', 470, 1, 92.5,'2017-04-30',  'villa-gallici.jpg', 5),
        (NULL, 'Mandarin oriental party', 14, 4, 102,'2017-04-29','mandarin-oriental-party.jpg', 1),
        (NULL, 'Roch hotel et spa', 71, 4, 54, '2017-04-30',  'roch-hotel-et-spa.jpg', 2),
        (NULL, 'Villa Lara', 570, 1, 63,'2017-04-23','villa-lara.jpg', 3),
        (NULL, 'La Réserve', 6, 5, 114,'2017-04-24',  'la-reserve.jpg', 4),
        (NULL, 'Résidence de France', 65, 5, 122, '2017-04-29',  'residence-de-france.jpg', 1),
        (NULL, 'Antibes les beau près', 36, 4, 78, '2017-04-21', 'antibes-les-beau-près.jpg', 2),
        (NULL, 'Le Savoie', 585, 1,  128,'2017-04-18',  'le-savoie.jpg',3),
        (NULL, 'Hotel Juana', 68, 3, 145,'2017-04-16',  'hotel-juana.jpg', 4),
        (NULL,  'Le Sereno',  455,  3, 200, '2017-04-14',  'le-sereno.jpg', 5);



sujet 14

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_vetement /type-vetement/show GET affiche les types de vetements retourne la vue show_type_vetement.html
add_type_vetement /type-vetement/add GET affiche le formulaire pour ajouter un type de vetement retourne la vue add_type_vetement.html
valid_add_type_vetement /type-vetement/add POST validation (soumission) du formulaire pour ajouter un type de vetement redirection sur la route /type-vetement/show
delete_type_vetement /type-vetement/delete GET suppression d’un type de vetement redirection sur la route /type-vetement/show
edit_type_vetement /type-vetement/edit GET affiche le formulaire pour modifier un type de vetement retourne la vue edit_type_vetement.html
valid_edit_type_vetement /type-vetement/edit POST validation (soumission) du formulaire pour modifier un type de vetement redirection sur la route /type-vetement/show
show_vetement /vetement/show GET affiche les vetements retourne la vue show_vetement.html
add_vetement /vetement/add GET affiche le formulaire pour ajouter un vetement retourne la vue add_vetement.html
valid_add_vetement /vetement/add POST validation (soumission) du formulaire pour ajouter un vetement redirection sur la route /vetement/show
delete_vetement /vetement/delete GET suppression d’un vetement redirection sur la route /vetement/show
edit_vetement /vetement/edit GET affiche le formulaire pour modifier un vetement retourne la vue edit_vetement.html
valid_edit_vetement /vetement/edit POST validation (soumission) du formulaire pour modifier un vetement redirection sur la route /vetement/show
filtre_vetement /vetement/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_vetement_filtre_show.html


########################################################### Sujet  14

typeVetements=[
    {'id' : 1 ,'libelleVetement': 'Pantalon','refTaille': '1'},
    {'id' : 2 ,'libelleVetement':'Short','refTaille': '1'},
    {'id' : 3 ,'libelleVetement':'Chemise','refTaille': '2'},
    {'id' : 4 ,'libelleVetement':'Veste','refTaille': '2'},
    {'id' : 5 ,'libelleVetement':'Tee-Shirt','refTaille': '2'},
    {'id' : 6 ,'libelleVetement':'Chaussette','refTaille': '3'},
    {'id' : 7 ,'libelleVetement':'Sous-vetements','refTaille': '1'}
]

vetements=[
   {'id' : 1 ,'nomVetement':'Jeans noir Lee' ,  'prixDeBase':'55' ,  'taille':'40'  ,  'dateAchat':'2017-01-15','typeVetement_id': 1, 'photo':'vetement_1.png'},
   {'id' : 2 ,'nomVetement':'Pantalon velour bleu NafNaf' ,  'prixDeBase':'65'  ,  'taille':'38'  ,  'dateAchat':'2017-01-15','typeVetement_id': 1, 'photo':'vetement_2.png'},
   {'id' : 3 ,'nomVetement':'Bermuda Rouge Puma' ,  'prixDeBase':'35'  ,  'taille':'38'  ,  'dateAchat':'2017-01-15','typeVetement_id':2, 'photo':'vetement_3.png'},
   {'id' : 4 ,'nomVetement':'Veste Cuir Noir' ,  'prixDeBase':'235'  ,  'taille':'38'  ,  'dateAchat':'2017-01-15','typeVetement_id':4, 'photo':'vetement_4.png'},
   {'id' : 5 ,'nomVetement':'Chaussette Montagne Salomon ' ,  'prixDeBase':'15.5'  ,  'taille':'40'  ,  'dateAchat':'2017-01-15','typeVetement_id':6, 'photo':'vetement_5.png'},
   {'id' : 6 ,'nomVetement':'Slip arena' ,  'prixDeBase':'15'  ,  'taille':'40'  ,  'dateAchat':'2017-01-15','typeVetement_id':7, 'photo':'vetement_6.png'},

   {'id' : 7 ,'nomVetement':'Chemise à Carreaux','prixDeBase':'50' ,  'taille':'42'  ,  'dateAchat':'2017-01-15','typeVetement_id':3, 'photo':'vetement_1_1.png'},
   {'id' : 8 ,'nomVetement':'Bermuda blanc','prixDeBase':'80' ,  'taille':'40'  ,  'dateAchat':'2017-01-15','typeVetement_id':2, 'photo':'vetement_1-2.png'},
   {'id' : 9 ,'nomVetement':'Tee-Shirt Nike','prixDeBase':'20' ,  'taille':'36'  ,  'dateAchat':'2017-01-15','typeVetement_id':5, 'photo':'vetement_1_3.png'},
   {'id' : 10 ,'nomVetement':'Costard','prixDeBase':'155' ,  'taille':'40'  ,  'dateAchat':'2017-01-15','typeVetement_id':6, 'photo':'vetement_1_4.png'},
   {'id' : 11 ,'nomVetement':'Chaussures de plage','prixDeBase':'11' ,  'taille':'44'  ,  'dateAchat':'2017-01-15','typeVetement_id':7, 'photo':'vetement_1_5.png'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 14 : vetement /  type_vetement       **

INSERT INTO type_vetement (id_type_vetement, libelle_type, ref_taille) VALUES
(NULL,'Pantalon',1),
(NULL,'Short',1),
(NULL,'Chemise',2),
(NULL,'Veste',2),
(NULL,'Tee-Shirt',2),
(NULL,'Chaussette',3),
(NULL,'Sous-vetements',1);

INSERT INTO vetement (id_vetement,nom_vetement, prix_de_base, taille, date_achat, type_vetement_id, photo) VALUES 
(NULL,'Jeans noir Lee',55.0,40,'2017-01-15',1,'vetement_1.png'),
(NULL,'Pantalon velour bleu NafNaf',65.0,38,'2017-01-15',1,'vetement_2.png'),
(NULL,'Bermuda Rouge Puma',35.0,38,'2017-01-15',2,'vetement_3.png'),
(NULL,'Veste Cuir Noir',235.0,38,'2017-01-15',4,'vetement_4.png'),
(NULL,'Chaussette Montagne Salomon ',15.5,40,'2017-01-15',6,'vetement_5.png'),
(NULL,'Slip arena',15.0,40,'2017-01-15',7,'vetement_6.png');

INSERT INTO vetement (id_vetement,nom_vetement, prix_de_base, taille, date_achat, type_vetement_id, photo) VALUES
(NULL,'Chemise à Carreaux',50,42,'2017-01-15',3,'vetement_1_1.png'),
(NULL,'Bermuda blanc',80,40,'2017-01-15',2,'vetement_1_2.png'),
(NULL,'Tee-Shirt Nike',20,36,'2017-01-15',5,'vetement_1_3.png'),
(NULL,'Costard',155,40,'2017-01-15',6,'vetement_1_4.png'),
(NULL,'Chaussures de plage',11,44,'2017-01-15',7,'vetement_1_5.png');



sujet 15

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_outil /type-outil/show GET affiche les types d’outils retourne la vue show_type_outil.html
add_type_outil /type-outil/add GET affiche le formulaire pour ajouter un type d’outil retourne la vue add_type_outil.html
valid_add_type_outil /type-outil/add POST validation (soumission) du formulaire pour ajouter un type d’outil redirection sur la route /type-outil/show
delete_type_outil /type-outil/delete GET suppression d’un type d’outil redirection sur la route /type-outil/show
edit_type_outil /type-outil/edit GET affiche le formulaire pour modifier un type d’outil retourne la vue edit_type_outil.html
valid_edit_type_outil /type-outil/edit POST validation (soumission) du formulaire pour modifier un type d’outil redirection sur la route /type-outil/show
show_outil /outil/show GET affiche les outils retourne la vue show_outil.html
add_outil /outil/add GET affiche le formulaire pour ajouter un outil retourne la vue add_outil.html
valid_add_outil /outil/add POST validation (soumission) du formulaire pour ajouter un outil redirection sur la route /outil/show
delete_outil /outil/delete GET suppression d’un outil redirection sur la route /outil/show
edit_outil /outil/edit GET affiche le formulaire pour modifier un outil retourne la vue edit_outil.html
valid_edit_outil /outil/edit POST validation (soumission) du formulaire pour modifier un outil redirection sur la route /outil/show
filtre_outil /outil/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_outil_filtre_show.html



# ajouter stock

########################################################### Sujet  15

typesOutils=[
    {'id' : 1 ,'libelleType':'mecanique'},
    {'id' : 2 ,'libelleType':'jardin'},
    {'id' : 3 ,'libelleType':'plomberie'}
]

outils=[
   {'id': 1 ,'nomOutil':'tournevis' , 'poids': 200 , 'dateAchat':'2019-09-09' , 'electrique': '0' ,'typeOutil_id':1, 'prix' : 10.5, 'image':'tournevis.png' },
   {'id': 2 ,'nomOutil':'perceuse' , 'poids': 1500 , 'dateAchat':'2019-08-09' , 'electrique': '1' ,'typeOutil_id':1, 'prix' : 65.5, 'image':'perceuse.png'  },
   {'id': 3 ,'nomOutil':'tondeuse' , 'poids': 15000 , 'dateAchat':'2019-07-09' , 'electrique': '1' ,'typeOutil_id':2, 'prix' : 675, 'image':'tondeuse.png'  },
   {'id': 4 ,'nomOutil':'débroussailleuse' , 'poids': 5000 , 'dateAchat':'2019-09-09' , 'electrique': '1' ,'typeOutil_id':2, 'prix' : 205, 'image':'débroussailleuse.jpg'  },
   {'id': 5 ,'nomOutil':'tuyau' , 'poids': 250 , 'dateAchat':'2019-09-09' , 'electrique': '0' ,'typeOutil_id':2, 'prix' : 20.5, 'image':'tuyau.png'  },
   {'id': 6 ,'nomOutil':'chalumeau' , 'poid': 1500 , 'dateAchat':'2019-08-09' , 'electrique': '0' , 'typeOutil_id':3, 'prix' : 150.5, 'image':'chalumeau.png'  },
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 15 : outils / type_outils       **

INSERT INTO type_outils (id_type_outil, libelle_type)
VALUES (1, 'mécanique'),
       (2, 'jardin'),
       (3, 'plomberie');


INSERT INTO outil (id_outil, nom_outil, poids, date_achat, electrique, type_outil_id , prix, image)
VALUES (NULL,'tournevis', 200, '2019-09-09', 0, 1, 10.50, 'tournevis.png'),
       (NULL,'perceuse', 1500, '2019-08-09', 1, 1, 65.50, 'perceuse.png'),
       (NULL,'tondeuse', 15000, '2019-07-09', 1, 2, 675.00, 'tondeuse.png'),
       (NULL,'débroussailleuse', 5000, '2019-09-09', 1, 2, 205.00, 'débroussailleuse.jpg'),
       (NULL,'tuyau', 250, '2019-09-09', 0, 2, 20.50, 'tuyau.png'),
       (NULL,'chalumeau', 1500, '2019-08-09', 0, 3, 150.50, 'chalumeau.png');



sujet 16

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_departement /departement-region/show GET affiche les departements retourne la vue show_departement.html
add_departement /departement-region/add GET affiche le formulaire pour ajouter un departement retourne la vue add_departement.html
valid_add_departement /departement-region/add POST validation (soumission) du formulaire pour ajouter un departement redirection sur la route /departement-region/show
delete_departement /departement-region/delete GET suppression d’un departement redirection sur la route /departement-region/show
edit_departement /departement-region/edit GET affiche le formulaire pour modifier un departement retourne la vue edit_departement.html
valid_edit_departement /departement-region/edit POST validation (soumission) du formulaire pour modifier un departement redirection sur la route /departement-region/show
show_monument /monument/show GET affiche les monuments retourne la vue show_monument.html
add_monument /monument/add GET affiche le formulaire pour ajouter un monument retourne la vue add_monument.html
valid_add_monument /monument/add POST validation (soumission) du formulaire pour ajouter un monument redirection sur la route /monument/show
delete_monument /monument/delete GET suppression d’un monument redirection sur la route /monument/show
edit_monument /monument/edit GET affiche le formulaire pour modifier un monument retourne la vue edit_monument.html
valid_edit_monument /monument/edit POST validation (soumission) du formulaire pour modifier un monument redirection sur la route /monument/show
filtre_monument /monument/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_monument_filtre_show.html


########################################################### Sujet  16

departementsRegion=[
   {'id' : 1 ,'nomDepartement':'Bouche du Rhône'},
   {'id' : 2 ,'nomDepartement':'Gard'},
   {'id' : 3 ,'nomDepartement':'Vaucluse'}
]


monuments=[
   {'id' : 1 ,'nomMonument':'Château d If' , 'description': 'description Château d If' , 'dateCreation':'1529-01-01' , 'noteMichelin': 4 ,'departement_id':1, 'prix' : 10.5, 'photo':'chateauDIf.jpg' },
   {'id' : 2 ,'nomMonument':'Basilique Notre-Dame de la Garde' , 'description': 'description Basilique Notre-Dame de la Garde' , 'dateCreation':'1700-08-09' , 'noteMichelin': '3' ,'departement_id':1, 'prix' : 0, 'photo':'basiliqueNotreDameDeLaGarde.jpg' },
   {'id' : 3 ,'nomMonument':'Pont du Gard' , 'description': 'description Pont du Gard' , 'dateCreation':'0500-1-1' , 'noteMichelin': '5' ,'departement_id':2, 'prix' : 15 , 'photo':'pontDuGard.jpg'},
   {'id' : 4 ,'nomMonument':'La Maison Carrée' , 'description': 'description La Maison Carrée' , 'dateCreation':'0500-01-01' , 'noteMichelin': 4 ,'departement_id':2, 'prix' : 10.5 , 'photo':'laMaisonCarree.jpg'},
   {'id' : 5 ,'nomMonument':'Palais des Papes' , 'description Palais des Papes': 'description' , 'dateCreation':'1500-09-09' , 'noteMichelin': '5' ,'departement_id':1, 'prix' : 6 , 'photo':'palaisDesPapes.jpg'},
   {'id' : 6 ,'nomMonument':'Musée du Petit Palais' , 'description': 'description Musée du Petit Palais' , 'dateCreation':'1900-08-09' , 'noteMichelin': 4 , 'departement_id':1, 'prix' : 5, 'photo':'museeDuPetitPalais.jpg' },
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- sujet 16 : monument / departement_region       **


-- DEPARTEMENT :

INSERT INTO departement_region(id_departement, nom_departement) VALUES 
(NULL, 'Bouche du Rhone'),
(NULL, 'Gard'),
(NULL, 'Vaucluse');

-- MONUMENT :

INSERT INTO monument(id_monument, nom_monument, description, date_creation, note_michelin, departement_id, prix, photo) VALUES 
(NULL,'Château d If', 'Le château d If est une forteresse qui a eu pour but de protéger les côtes d une invasion, de couvrir les sorties et le mouillage de la nouvelle flotte de galères royales ainsi que de surveiller Marseille, ratachée au Royayme de France en 1480.', '1529-1-1', '4', '1', 10.5, 'chateauDIf.jpg'),
(NULL,'Basilique Notre-Dame de la Garde', 'La Basilique Notre-Dame de la Garde également appelée "La Bonne Mère" est une des basiliques mineures de l Église catholique. Elle a été construite en 1864 par l architecte Henri Espérandieu dans le style romano byzantin.', '1700-8-9', '3', '1', 0, 'basiliqueNotreDameDeLaGarde.jpg'),
(NULL,'Pont du Gard', 'Le pont du Gard est un pont, bâti dans la première moitié du premier siècle, à trois niveaux destiné au passage d un aqueduc romain enjambant le Gardon.', '0500-1-1', '5', '2', 15, 'pontDuGard.jpg'),
(NULL,'La Maison Carrée', 'La Maison Carrée est un temple romain hexastyle édifié au début du premier siècle. Elle est dédiée lors de sa construction pour Auguste à la gloire de ses deux petits-fils: Lucius Caesar et Caius Julius Caesar.', '0500-1-1', '4', '2', 10.5, 'laMaisonCarree.jpg'),
(NULL,'Palais des Papes', 'Le Palais des Papes est le plus important palais gothique de l Occident. Édifié à partir de 1335 par deux papes bâtisseurs, Benoît XII et son successeur Clément VI, il est le symbole du rayonnement de l église sur l Occident Chrétien au XIVème siècle.', '1500-9-9', '5', '3', 6, 'palaisDesPapes.jpg'),
(NULL,'Musée du Petit Palais', 'Le musée du Petit Palais est un musée ouvert en 1976 dans une livrée de cardinalice consacré à la peinture et à la sculpture médiévales et de la première Renaissance. Il rassemble environ 390 peintures et 600 sculptures dont l une des plus importantes collections internationales de primitifs italiens.', '1900-8-9', '4', '3', 5, 'museeDuPetitPalais.jpg');



sujet 17

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_epoque /type-epoque/show GET affiche les types d’époques retourne la vue show_type_epoque.html
add_type_epoque /type-epoque/add GET affiche le formulaire pour ajouter un type d’époque retourne la vue add_type_epoque.html
valid_add_type_epoque /type-epoque/add POST validation (soumission) du formulaire pour ajouter un type d’époque redirection sur la route /type-epoque/show
delete_type_epoque /type-epoque/delete GET suppression d’un type d’époque redirection sur la route /type-epoque/show
edit_type_epoque /type-epoque/edit GET affiche le formulaire pour modifier un type d’époque retourne la vue edit_type_epoque.html
valid_edit_type_epoque /type-epoque/edit POST validation (soumission) du formulaire pour modifier un type d’époque redirection sur la route /type-epoque/show
show_tableau /tableau/show GET affiche les tableaux retourne la vue show_tableau.html
add_tableau /tableau/add GET affiche le formulaire pour ajouter un tableau retourne la vue add_tableau.html
valid_add_tableau /tableau/add POST validation (soumission) du formulaire pour ajouter un tableau redirection sur la route /tableau/show
delete_tableau /tableau/delete GET suppression d’un tableau redirection sur la route /tableau/show
edit_tableau /tableau/edit GET affiche le formulaire pour modifier un tableau retourne la vue edit_tableau.html
valid_edit_tableau /tableau/edit POST validation (soumission) du formulaire pour modifier un tableau redirection sur la route /tableau/show
filtre_tableau /tableau/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_tableau_filtre_show.html





########################################################### Sujet  17

typesEpoque = [
{'id': 1,'libelleEpoque': 'Renaissance', 'anneeDebut':'1700', 'anneeFin':'1850'},
 {'id': 2,'libelleEpoque': 'Temps Modernes', 'anneeDebut':'1492', 'anneeFin':'1789'},
 {'id': 3,'libelleEpoque': 'Contemporain', 'anneeDebut':'1800', 'anneeFin':'2000'},
 {'id': 4,'libelleEpoque': 'Moyen-Age', 'anneeDebut':'476', 'anneeFin':'1492'}
]

tableaux = [
{'id':1,'nomTableau':'La Joconde', 'prixAssurance':'4000','dateRealisation':'1506-10-21', 'peintre':'Léonard de Vinci', 'localisationMusee':'Louvre', 'photo':'laJoconde.jpeg', 'mouvement':None, 'typeEpoque_id':1},
 {'id':2,'nomTableau':'Le Radeau de La Méduse', 'prixAssurance':'300.2','dateRealisation':'1819-03-15', 'peintre':'Théodore Géricault', 'localisationMusee':'Louvre', 'photo':'leRadeauDeLaMeduse.jpeg', 'mouvement':'romantisme', 'typeEpoque_id':3},
 {'id':3,'nomTableau':'Guernica', 'prixAssurance':'200.6','dateRealisation':'1937-06-04', 'peintre':'Pablo Picasso', 'localisationMusee':'Reina Sofia', 'photo':'guernica.jpeg', 'mouvement':'cubisme','typeEpoque_id':3},
 {'id':4,'nomTableau':"L'Ecole d'Athène", 'prixAssurance':'105.3','dateRealisation':'1512-02-21', 'peintre':'Raphaël', 'localisationMusee':'Vatican', 'photo':'lEcoleDAthene.jpeg', 'mouvement':'maniérisme', 'typeEpoque_id':1},
 {'id':5,'nomTableau':'La Jeune Fille à la perle', 'prixAssurance':'2040','dateRealisation':'1665-11-12', 'peintre':'Johannes Vermeer', 'localisationMusee':'Mauritshuis', 'photo':'laJeuneFilleALaPerle.jpeg', 'mouvement':'baroque', 'typeEpoque_id':2},
 {'id':6,'nomTableau':'La Laitière', 'prixAssurance':'3040','dateRealisation':'1658-05-30', 'peintre':'Johannes Vermeer', 'localisationMusee':'Rijksmuseum', 'photo':'laLaitière.jpeg', 'mouvement':'baroque', 'typeEpoque_id':2},
 {'id':7,'nomTableau':'Le Calvaire', 'prixAssurance':'5060','dateRealisation':'1505-09-30', 'peintre':'Josse Lieferinxe', 'localisationMusee':'Louvre', 'photo':'leCalvaire.jpeg','mouvement':None, 'typeEpoque_id':1},
 {'id':9,'nomTableau':'Portrait du bouffon Gonella', 'prixAssurance':'1230','dateRealisation':'1445-03-18', 'peintre':'Jean Fouquet', 'localisationMusee':'Kunsthistorisches Museum', 'photo':'leProtraitduBouffonGonella.jpeg','mouvement':None, 'typeEpoque_id':4},
 {'id':10,'nomTableau':'La liberté guidant le peuple', 'prixAssurance':'150.5','dateRealisation':'1830-12-25', 'peintre':'Eugène DelaCroix', 'localisationMusee':'Louvre', 'photo':'laLiberteGuidantlePeuple.jpeg','mouvement': 'romantisme', 'typeEpoque_id':3},
 {'id':11,'nomTableau':"Rentable de l'Agneau mystique", 'prixAssurance':'1010','dateRealisation':'1432-01-05', 'peintre':'Jan van Eyck', 'localisationMusee':'Cathédrale Saint-Bavon de Gand', 'photo':'AgneauMystique.jpeg','mouvement':None, 'typeEpoque_id':4}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 17 : tableau / typeEpoque     --

INSERT INTO type_epoque (id_type_epoque,libelle, annee_debut, annee_fin) VALUES 
(NULL, 'Renaissance',1700,1850)
,(NULL,'Temps Modernes',1492,1789)
,(NULL, 'Contemporain', 1800, 2000)
,(NULL, 'Moyen-Age', 476, 1492);


INSERT INTO tableau (id_tableau, nom_tableau, prix_assurance, date_realisation, peintre , localisation_musee, photo ,mouvement, type_epoque_id)
VALUES (NULL, 'La Joconde', '4000', '1506-10-21', 'Léonard de Vinci', 'Louvre', 'laJoconde.jpeg', NULL, 1),
       (NULL, 'Le Radeau de La Méduse', '300.2','1819-03-15', 'Théodore Géricault', 'Louvre', 'leRadeauDeLaMeduse.jpeg', 'romantisme',3),
       (NULL, 'Guernica', '200.6','1937-06-04', 'Pablo Picasso', 'Reina Sofia', 'guernica.jpeg', 'cubisme',3),
       (NULL, 'L Ecole d Athène', '105.3','1512-02-21', 'Raphaël', 'Vatican', 'lEcoleDAthene.jpeg', 'maniérisme', 1)
       (NULL, 'La Jeune Fille à la perle', '2040','1665-11-12', 'Johannes Vermeer', 'Mauritshuis', 'laJeuneFilleALaPerle.jpeg', 'baroque',2)
       (NULL, 'La Laitière', '3040','1658-05-30','Johannes Vermeer', 'Rijksmuseum', 'laLaitière.jpeg', 'baroque', 2)
       (NULL, 'Le Calvaire', '5060','1505-09-30', 'Josse Lieferinxe', 'Louvre', 'leCalvaire.jpeg',NULL, 1)
       (NULL,'Portrait du bouffon Gonella','1230','1445-03-18', 'Jean Fouquet', 'Kunsthistorisches Museum', 'leProtraitduBouffonGonella.jpeg',NULL, 4)
       (NULL,'La liberté guidant le peuple', '150.5','1830-12-25', 'Eugène DelaCroix', 'Louvre', 'laLiberteGuidantlePeuple.jpeg', 'romantisme', 3)
       (NULL,'Rentable de l Agneau mystique', '1010','1432-01-05', 'Jan van Eyck', 'Cathédrale Saint-Bavon de Gand', 'AgneauMystique.jpeg',NULL, 4);



sujet 18

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_sport /type-sport/show GET affiche les types de sports retourne la vue show_type_sport.html
add_type_sport /type-sport/add GET affiche le formulaire pour ajouter un type de sport retourne la vue add_type_sport.html
valid_add_type_sport /type-sport/add POST validation (soumission) du formulaire pour ajouter un type de sport redirection sur la route /type-sport/show
delete_type_sport /type-sport/delete GET suppression d’un type de sport redirection sur la route /type-sport/show
edit_type_sport /type-sport/edit GET affiche le formulaire pour modifier un type de sport retourne la vue edit_type_sport.html
valid_edit_type_sport /type-sport/edit POST validation (soumission) du formulaire pour modifier un type de sport redirection sur la route /type-sport/show
show_sport /sport/show GET affiche les sports retourne la vue show_sport.html
add_sport /sport/add GET affiche le formulaire pour ajouter un sport retourne la vue add_sport.html
valid_add_sport /sport/add POST validation (soumission) du formulaire pour ajouter un sport redirection sur la route /sport/show
delete_sport /sport/delete GET suppression d’un sport redirection sur la route /sport/show
edit_sport /sport/edit GET affiche le formulaire pour modifier un sport retourne la vue edit_sport.html
valid_edit_sport /sport/edit POST validation (soumission) du formulaire pour modifier un sport redirection sur la route /sport/show
filtre_sport /sport/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_sport_filtre_show.html



########################################################### Sujet  18

typesSport = [
    {'id':1,'libelleType':'Ballon'},
    {'id':2,'libelleType':'Raquette'},
    {'id':3,'libelleType':'Combat'},
    {'id':4,'libelleType':'Aquatique'}
]

sports = [
    {'id':1,'nomSport':'Football', 'prixInscription':'80', 'dateLimiteInscription':'2020-10-19', 'typeSport_id' :1 , 'image':'foot.jpg','nbPratiquants':15},
    {'id':2,'nomSport':'Basketball', 'prixInscription':'80', 'dateLimiteInscription':'2020-10-19', 'typeSport_id' :1 , 'image':'basket.jpg','nbPratiquants':151},
    {'id':3,'nomSport':'Tennis de table', 'prixInscription':'80', 'dateLimiteInscription':'2020-10-19', 'typeSport_id' :2, 'image':'tennisTable.jpg','nbPratiquants':5},
    {'id':4,'nomSport':'Tennis', 'prixInscription':'85', 'dateLimiteInscription':'2020-10-19',  'typeSport_id' :2, 'image':'tennis.jpg','nbPratiquants':20},
    {'id':5,'nomSport':'Badminton', 'prixInscription':'70', 'dateLimiteInscription':'2020-10-22', 'typeSport_id' :2, 'image':'badminton.png','nbPratiquants':22},
    {'id':6,'nomSport':'Judo', 'prixInscription':'90', 'dateLimiteInscription':'2020-10-25', 'typeSport_id' :3, 'image':'judo.jpg','nbPratiquants':43},
    {'id':7,'nomSport':'Boxe', 'prixInscription':'72.50', 'dateLimiteInscription':'2020-10-24', 'typeSport_id' :3, 'image':'boxe.jpg','nbPratiquants':52},
    {'id':8,'nomSport':'Karaté', 'prixInscription':'60.99', 'dateLimiteInscription':'2020-10-23','typeSport_id'  :3, 'image':'karaté.png', 'nbPratiquants':30},
    {'id':9,'nomSport':'Natation', 'prixInscription':'30.30', 'dateLimiteInscription':'2020-10-30', 'typeSport_id' :4, 'image':'natation.jpg','nbPratiquants':100},
    {'id':10,'nomSport':'Kanoé', 'prixInscription':'125.99', 'dateLimiteInscription':'2020-10-29', 'typeSport_id' :4, 'image':'kanoe.jpg','nbPratiquants':99},
    {'id':11,'nomSport':'Water Polo', 'prixInscription':'31.90', 'dateLimiteInscription':'2020-09-19', 'typeSport_id' :4, 'image':'waterPolo.jpg','nbPratiquants':25},
    {'id':12,'nomSport':'Planche à voile', 'prixInscription':'230', 'dateLimiteInscription':'2020-10-19', 'typeSport_id' :4, 'image':'planche.jpg','nbPratiquants':30},
    {'id':13,'nomSport':'Handball', 'prixInscription':'10', 'dateLimiteInscription':'2020-08-19','typeSport_id' :1, 'image':'hand.jpg','nbPratiquants':22},
    {'id':14,'nomSport':'Volleyball', 'prixInscription':'25', 'dateLimiteInscription':'2020-08-19','typeSport_id' :1, 'image':'volley.jpg','nbPratiquants':55},
    {'id':15,'nomSport':'Rugby', 'prixInscription':'30.80', 'dateLimiteInscription':'2020-10-19', 'typeSport_id' :1, 'image':'rugby.jpg','nbPratiquants':60}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 18 : sport /  type_sport       **

INSERT INTO type_sport(id_type_sport, libelle_type) VALUES
(NULL,'Ballon'),
(NULL,'Raquette'),
(NULL,'Combat'),
(NULL,'Aquatique');

INSERT INTO sport(id_sport, nom_sport,prix_inscription,date_limite_inscription,type_sport_id,image,nb_pratiquants) VALUES
(NULL,'Football',80,'2020-10-19',1,'foot.jpg',15),
(NULL,'Basketball',80,'2020-10-19',1,'basket.jpg',151),
(NULL,'Tennis de table',80,'2020-10-19',2,'tennisTable.jpg',5),
(NULL,'Tennis',85,'2020-10-19',2,'tennis.jpg',20),
(NULL,'Badminton',70,'2020-10-22',2,'badminton.png',22),
(NULL,'Judo',90,'2020-10-25',3,'judo.jpg',43),
(NULL,'Boxe',72.50,'2020-10-24',3,'boxe.jpg',52),
(NULL,'Karaté',60.99,'2020-10-23',3,'karaté.png',30),
(NULL,'Natation',30.30,'2020-10-30',4,'natation.jpg',100),
(NULL,'Kanoé',125.99,'2020-10-29',4,'kanoe.jpg',99),
(NULL,'Water Polo',31.90,'2020-09-19',4,'waterPolo.jpg',25),
(NULL,'Planche à voile',230,'2020-10-19',4,'planche.jpg',30),
(NULL,'Handball',10,'2020-08-19',1,'hand.jpg',22),
(NULL,'Volleyball',25,'2020-08-19',1,'volley.jpg',55),
(NULL,'Rugby',30.80,'2020-10-19',1,'rugby.jpg',60);



sujet 19

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_arbre /type-arbre/show GET affiche les types d’arbres retourne la vue show_type_arbre.html
add_type_arbre /type-arbre/add GET affiche le formulaire pour ajouter un type d’arbre retourne la vue add_type_arbre.html
valid_add_type_arbre /type-arbre/add POST validation (soumission) du formulaire pour ajouter un type d’arbre redirection sur la route /type-arbre/show
delete_type_arbre /type-arbre/delete GET suppression d’un type d’arbre redirection sur la route /type-arbre/show
edit_type_arbre /type-arbre/edit GET affiche le formulaire pour modifier un type d’arbre retourne la vue edit_type_arbre.html
valid_edit_type_arbre /type-arbre/edit POST validation (soumission) du formulaire pour modifier un type d’arbre redirection sur la route /type-arbre/show
show_arbre /arbre/show GET affiche les arbres retourne la vue show_arbre.html
add_arbre /arbre/add GET affiche le formulaire pour ajouter un arbre retourne la vue add_arbre.html
valid_add_arbre /arbre/add POST validation (soumission) du formulaire pour ajouter un arbre redirection sur la route /arbre/show
delete_arbre /arbre/delete GET suppression d’un arbre redirection sur la route /arbre/show
edit_arbre /arbre/edit GET affiche le formulaire pour modifier un arbre retourne la vue edit_arbre.html
valid_edit_arbre /arbre/edit POST validation (soumission) du formulaire pour modifier un arbre redirection sur la route /arbre/show
filtre_arbre /arbre/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_arbre_filtre_show.html



########################################################### Sujet  19

typesArbre = [
    {'id':1,'designation':'Pinacées'},
    {'id':2,'designation':'Rosaceae'},
    {'id':3,'designation':'Fagaceae'},
    {'id':4,'designation':'Sapindaceae'},
    {'id':5,'designation':'Oleaceae'},
    {'id':6,'designation':'Salicaceae'},
    {'id':7,'designation':'Fabaceae'},
]

arbres = [ 
    {'id':1,'nomArbre':'sapin', 'hauteurMaxi':'10', 'datePlantation':'2020-05-05', 'prixM3':'401','surfacePlantation':'5','localisation':'Doubs', 'type_arbre_id' :1, 'image':'sapin.jpg'},
    {'id':2,'nomArbre':'pin rouge', 'hauteurMaxi':'35', 'datePlantation':'2020-02-20', 'prixM3':'900','surfacePlantation':'3','localisation':'Jura', 'type_arbre_id' :1, 'image':'pin.jpeg'},
    {'id':3,'nomArbre':'pommier', 'hauteurMaxi':'30', 'datePlantation':'2019-08-05', 'prixM3':'300','surfacePlantation':'10','localisation':'Jura', 'type_arbre_id' :2, 'image':'pommier.jpg'},
    {'id':4,'nomArbre':'cerisier', 'hauteurMaxi':'25', 'datePlantation':'2018-07-02', 'prixM3':'650','surfacePlantation':'15','localisation':'Japon', 'type_arbre_id' :2, 'image':'ceriser.jpg'},
    {'id':5,'nomArbre':'chêne', 'hauteurMaxi':'35', 'datePlantation':'2017-04-17', 'prixM3':'105','surfacePlantation':'30','localisation':'Doubs', 'type_arbre_id' :3, 'image':'chêne.jpg'},
    {'id':6,'nomArbre':'hêtre', 'hauteurMaxi':'45', 'datePlantation':'2016-05-25', 'prixM3':'195','surfacePlantation':'23','localisation':'Voges', 'type_arbre_id' :3, 'image':'hêtre.jpg'},
    {'id':7,'nomArbre':'marronnier', 'hauteurMaxi':'32', 'datePlantation':'2019-06-08', 'prixM3':'268','surfacePlantation':'14','localisation':'Doubs', 'type_arbre_id' :4, 'image':'marronnier.jpg'},
    {'id':8,'nomArbre':'olivier', 'hauteurMaxi':'20', 'datePlantation':'2019-07-19', 'prixM3':'456','surfacePlantation':'26','localisation':'Portugal', 'type_arbre_id' :5, 'image':'olivier.jpeg'},
    {'id':9,'nomArbre':'saule pleureur', 'hauteurMaxi':'30', 'datePlantation':'2018-01-15', 'prixM3':'847','surfacePlantation':'2','localisation':'Jura', 'type_arbre_id' :6, 'image':'saule.jpg'},
    {'id':10,'nomArbre':'acacia', 'hauteurMaxi':'48', 'datePlantation':'2019-08-26', 'prixM3':'984','surfacePlantation':'35','localisation':'Australie', 'type_arbre_id' :7, 'image':'acacia.jpg'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 19 : arbre / famille_arbre       **


INSERT INTO type_arbre(id_type_arble,designation) VALUES 
(NULL,'Pinacées'),
(NULL,'Rosaceae'),
(NULL,'Fagaceae'),
(NULL,'Sapindaceae'),
(NULL,'Oleaceae'),
(NULL,'Salicaceae'),
(NULL,'Fabaceae');


INSERT INTO arbre (id_arbre,nom_arbre,hauteur_maxi,date_plantation,prix_m3,surface_plantation, localisation, type_arbre_id, image ) VALUES
    (NULL,'sapin', 10, '2020-05-05',401 ,5 , 'Doubs', 1, 'sapin.jpg'),
    (NULL,'pin rouge', 35, '2020-02-20', 900,3,'Jura', 1,'pin.jpeg'),
    (NULL,'pommier', 30, '2019-08-05', 300,10,'Jura',2,'pommier.jpg'),
    (NULL,'cerisier',25,'2018-07-02', 650,15,'Japon', 2,'ceriser.jpg'),
    (NULL,'chêne',35,'2017-04-17',105,30,'Doubs', 3,'chêne.jpg'),
    (NULL,'hêtre', 45, '2016-05-25', 195,23,'Vosges',3,'hêtre.jpg'),
    (NULL,'marronnier',32,'2019-06-08',268,14,'Doubs', 4,'marronnier.jpg'),
    (NULL,'olivier',20, '2019-07-19', 456,26,'Portugal', 5,'olivier.jpeg'),
    (NULL,'saule pleureur', 30, '2018-01-15', 847,2,'Jura', 6,'saule.jpg'),
    (NULL,'acacia', 48, '2019-08-26', 984,35,'Australie', 7,'acacia.jpg');



sujet 20

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_animal /type-animal/show GET affiche les types d’animaux retourne la vue show_type_animal.html
add_type_animal /type-animal/add GET affiche le formulaire pour ajouter un type d’animal retourne la vue add_type_animal.html
valid_add_type_animal /type-animal/add POST validation (soumission) du formulaire pour ajouter un type d’animal redirection sur la route /type-animal/show
delete_type_animal /type-animal/delete GET suppression d’un type d’animal redirection sur la route /type-animal/show
edit_type_animal /type-animal/edit GET affiche le formulaire pour modifier un type d’animal retourne la vue edit_type_animal.html
valid_edit_type_animal /type-animal/edit POST validation (soumission) du formulaire pour modifier un type d’animal redirection sur la route /type-animal/show
show_animaux /animal/show GET affiche les animaux retourne la vue show_animaux.html
add_animal /animal/add GET affiche le formulaire pour ajouter un animal retourne la vue add_animal.html
valid_add_animal /animal/add POST validation (soumission) du formulaire pour ajouter un animal redirection sur la route /animal/show
delete_animal /animal/delete GET suppression d’un animal redirection sur la route /animal/show
edit_animal /animal/edit GET affiche le formulaire pour modifier un animal retourne la vue edit_animal.html
valid_edit_animal /animal/edit POST validation (soumission) du formulaire pour modifier un animal redirection sur la route /animal/show
filtre_animaux /animal/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_animal_filtre_show.html


########################################################### Sujet  20

typeAnimal = [
    {'id' : 1, 'libelle':'chien', 'photo':'logo_chien.png'},
    {'id' : 2, 'libelle':'chat', 'photo':'logo_chat.png'},
    {'id' : 3,  'libelle':'oiseau', 'photo':'logo_oiseau.png'},
    {'id' : 4,  'libelle':'poisson', 'photo':'logo_poisson.png'}
]

animaux = [
    {'id' : 1,'nomAnimal':'Snoopy', 'prixAchat':'100.00', 'dateNaissance':'2021-06-12', 'couleur':'blanc', 'poids':'8.43', 'taille':'40.00', 'photo':'Snoopy.jpg', 'typeAnimal_id': '1'},
    {'id' : 2,'nomAnimal':'Sam', 'prixAchat':'50.00', 'dateNaissance':'2023-01-21', 'couleur':'noir', 'poids':'12.3', 'taille':'50.00', 'photo':'Sam.jpg','typeAnimal_id': '1'},
    {'id' : 3,'nomAnimal':'Aaron', 'prixAchat':'00.00', 'dateNaissance':'2022-11-05', 'couleur':'roux', 'poids':'2.43', 'taille':'10.00', 'photo':'Aaron.jpg','typeAnimal_id': '1'},
    {'id' : 4,'nomAnimal':'Ulysse', 'prixAchat':'12.32', 'dateNaissance':'2020-12-12', 'couleur':'blanc', 'poids':'3.3', 'taille':'20.00', 'photo':'Ulysse.jpg','typeAnimal_id': '2'},
    {'id' : 5,'nomAnimal':'Romeo', 'prixAchat':'150.99', 'dateNaissance':'2021-09-07', 'couleur':'noir', 'poids':'2.43', 'taille':'10.00', 'photo':'Romeo.jpg','typeAnimal_id': '1'},
    {'id' : 6,'nomAnimal':'Abysse', 'prixAchat':'199.99', 'dateNaissance':'2020-01-21', 'couleur':'noir', 'poids':'0.13', 'taille':'10.00', 'photo':'Abysse.jpg','typeAnimal_id': '3'}
    {'id' : 7,'nomAnimal':'Rox', 'prixAchat':'299.99', 'dateNaissance':'2020-2-30', 'couleur':'noir/blanc', 'poids':'8.43', 'taille':'60.00', 'photo':'Rox.jpg', 'typeAnimal_id': '1'},
    {'id' : 8,'nomAnimal':'Donald', 'prixAchat':'29.99', 'dateNaissance':'2020-2-30', 'couleur':'noir/blanc', 'poids':'3.43', 'taille':'25.00', 'photo':'Donald.jpg', 'typeAnimal_id': '3'},
    {'id' : 9,'nomAnimal':'Enzo', 'prixAchat':'299.99', 'dateNaissance':'2020-2-30', 'couleur':'roux', 'poids':'8.43', 'taille':'70.00', 'photo':'Enzo.jpg', 'typeAnimal_id': '1'},
    {'id' : 10,'nomAnimal':'Nemo', 'prixAchat':'9.99', 'dateNaissance':'2020-2-30', 'couleur':'roujaune/bleux', 'poids':'0,1', 'taille':'11.00', 'photo':'Nemo.jpg', 'typeAnimal_id': '4'}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

-- # sujet 20 : animal  / type_animal     --

INSERT INTO type_animal(id_type_animal, nom_type, photo) VALUES
(NULL,'chien','logo_chien.png'),
(NULL,'chat','logo_chat.png'),
(NULL,'oiseau','logo_oiseau.png'),
(NULL,'poisson','logo_poisson.png');

INSERT INTO animal(id_animal, type_animal_id, nom_animal, prix_achat, date_naissance, couleur, poids, taille, photo) VALUES
(NULL,1,'Snoopy',100.00,'2021-06-12','blanc',8.43,40.00,'Snoopy.jpg'),
(NULL,2,'Sam',50.00,'2023-01-21','noir',12.3,50.00,'Sam.jpg'),
(NULL,1,'Aaron',00.00,'2022-11-05','roux',2.43,10.00,'Aaron.jpg'),
(NULL,2,'Ulysse',12.32,'2020-12-12','blanc',33,20.00),'Ulysse.jpg',
(NULL,1,'Romeo',150.99,'2021-09-07','noir',2.43,10.00,'Romeo.jpg'),
(NULL,3,'Abysse',199.99,'2020-01-21','noir',0.13,10.00,'Abysse.jpg'),
(NULL,1,'Rox',299.99,'2020-2-30','noir/blanc',8.43,60.00,'Rox.jpg'),
(NULL,3,'Donald',29.9,'2020-2-30','noir/blanc',3.43,25.00,'Donald.jpg'),
(NULL,1,'Enzo',299.99,'2020-2-30','roux',8.43,70.00,'Enzo.jpg'),
(NULL,4,'Nemo',9.99,'2022-2-30','jaune/bleu',0.1,11.00,'Nemo.jpg')
;



sujet 21

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_meuble /type-meuble/show GET affiche les types de meubles retourne la vue show_type_meuble.html
add_type_meuble /type-meuble/add GET affiche le formulaire pour ajouter un type de meuble retourne la vue add_type_meuble.html
valid_add_type_meuble /type-meuble/add POST validation (soumission) du formulaire pour ajouter un type de meuble redirection sur la route /type-meuble/show
delete_type_meuble /type-meuble/delete GET suppression d’un type de meuble redirection sur la route /type-meuble/show
edit_type_meuble /type-meuble/edit GET affiche le formulaire pour modifier un type de meuble retourne la vue edit_type_meuble.html
valid_edit_type_meuble /type-meuble/edit POST validation (soumission) du formulaire pour modifier un type de meuble redirection sur la route /type-meuble/show
show_meuble /meuble/show GET affiche les meubles retourne la vue show_meuble.html
add_meuble /meuble/add GET affiche le formulaire pour ajouter un meuble retourne la vue add_meuble.html
valid_add_meuble /meuble/add POST validation (soumission) du formulaire pour ajouter un meuble redirection sur la route /meuble/show
delete_meuble /meuble/delete GET suppression d’un meuble redirection sur la route /meuble/show
edit_meuble /meuble/edit GET affiche le formulaire pour modifier un meuble retourne la vue edit_meuble.html
valid_edit_meuble /meuble/edit POST validation (soumission) du formulaire pour modifier un meuble redirection sur la route /meuble/show
filtre_meuble /meuble/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_meuble_filtre_show.html




########################################################### Sujet  21

typesMeuble = [
            {'id':1,'libelleType':'canape'},
            {'id':2,'libelleType':'lit'},
            {'id':3,'libelleType':'commode'},
            {'id':4,'libelleType':'armoire'},
        ]

meubles = [
    {'id':1,'nomMeuble':'klippan', 'prixMeuble':'50.20', 'dateFabrication':'2020-06-06', 'couleur':'rouge', 'materiaux' :'bois', 'typeMeuble_id':1, 'nbStock':'3', 'image':'klippan.png'},
    {'id': 2, 'nomMeuble':'malm', 'prixMeuble':'12.00', 'dateFabrication':'2020-06-06', 'couleur':'vert', 'materiaux' :'acier', 'typeMeuble_id':2, 'nbStock':'5', 'image':'malm.png'},
    {'id': 3, 'nomMeuble':'besta', 'prixMeuble':'14.36', 'dateFabrication':'2020-06-06', 'couleur':'jaune', 'materiaux' :'bois', 'typeMeuble_id':3, 'nbStock':'6', 'image':'besta.jpg'},
    {'id': 4, 'nomMeuble':'billy', 'prixMeuble':'24.59', 'dateFabrication':'2020-06-06', 'couleur':'bleu', 'materiaux' :'verre', 'typeMeuble_id':4, 'nbStock':'2', 'image':'billy.jpg'},
    {'id': 5, 'nomMeuble':'friheten', 'prixMeuble':'42.21', 'dateFabrication':'2020-06-06', 'couleur':'ebene', 'materiaux' :'acier', 'typeMeuble_id':1, 'nbStock':'8', 'image':'friheten.png'},
    {'id': 6, 'nomMeuble':'brimnes', 'prixMeuble':'11.11', 'dateFabrication':'2019-06-06', 'couleur':'magenta', 'materiaux' :'alumonium', 'typeMeuble_id':2, 'nbStock':'5', 'image':'brimnes.png'},
    {'id':7,'nomMeuble':'la commode du luxe', 'prixMeuble':'35.21', 'dateFabrication':'2019-06-06', 'couleur':'voilet', 'materiaux' :'marbre', 'typeMeuble_id':3, 'nbStock':'1', 'image':'commodeLuxe.jpg'},
    {'id':8,'nomMeuble':'lack', 'prixMeuble':'32.25', 'dateFabrication':'2019-12-06', 'couleur':'gris', 'materiaux' :'acier', 'typeMeuble_id':4, 'nbStock':'7', 'image':'lack.png'},
    {'id':9,'nomMeuble':'vilme', 'prixMeuble':'52.36', 'dateFabrication':'2019-12-26', 'couleur':'satin', 'materiaux' :'bois', 'typeMeuble_id':1, 'nbStock':'4', 'image':'vilme.png'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 21 : meuble / typeMeuble        **

INSERT INTO type_meuble(id_type_meuble, libelle_type)
VALUES (NULL,'canape'),
       (NULL,'lit'),
       (NULL,'commode'),
       (NULL,'armoire');


INSERT INTO meuble (id_meuble, nom_meuble,prix_meuble,date_fabrication,couleur,materiaux,type_meuble_id,nb_stock,image) VALUES
(NULL,'klippan', '50.20', '2020-06-06', 'rouge', 'bois', 1, 3, 'klippan.png'),
(NULL,'malm', '12.00', '2020-06-06', 'vert', 'acier', 2, 5, 'malm.png'),
(NULL,'besta', '14.36', '2020-06-06', 'jaune', 'bois', 3, 6, 'besta.jpg'),
(NULL,'billy', '24.59', '2020-06-06', 'bleu', 'verre', 4, 2, 'billy.jpg'),
(NULL,'friheten', '42.21', '2020-06-06', 'ebene', 'acier', 1, 8, 'friheten.png'),
(NULL,'brimnes', '11.11', '2019-06-06', 'magenta', 'aluminium', 2, 5, 'brimnes.png'),
(NULL,'la commode du luxe', '35.21', '2019-06-06', 'voilet', 'marbre', 3, 1, 'commodeLuxe.jpg'),
(NULL,'lack', '32.25', '2019-12-06', 'gris', 'acier', 4, 7, 'lack.png'),
(NULL,'vilme', '52.36', '2019-12-26', 'satin', 'bois', 1, 4, 'vilme.png');



sujet 22

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_marque /marque-moto/show GET affiche les marques retourne la vue show_marque.html
add_marque /marque-moto/add GET affiche le formulaire pour ajouter une marque retourne la vue add_marque.html
valid_add_marque /marque-moto/add POST validation (soumission) du formulaire pour ajouter une marque redirection sur la route /marque-moto/show
delete_marque /marque-moto/delete GET suppression d’une marque redirection sur la route /marque-moto/show
edit_marque /marque-moto/edit GET affiche le formulaire pour modifier une marque retourne la vue edit_marque.html
valid_edit_marque /marque-moto/edit POST validation (soumission) du formulaire pour modifier une marque redirection sur la route /marque-moto/show
show_moto /moto/show GET affiche les motos retourne la vue show_moto.html
add_moto /moto/add GET affiche le formulaire pour ajouter une moto retourne la vue add_moto.html
valid_add_moto /moto/add POST validation (soumission) du formulaire pour ajouter une moto redirection sur la route /moto/show
delete_moto /moto/delete GET suppression d’une moto redirection sur la route /moto/show
edit_moto /moto/edit GET affiche le formulaire pour modifier une moto retourne la vue edit_moto.html
valid_edit_moto /moto/edit POST validation (soumission) du formulaire pour modifier une moto redirection sur la route /moto/show
filtre_moto /moto/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_moto_filtre_show.html




# peyrous yonnis
marquesMotos = [
 {'id' : 1, 'libelle':'Yamaha', 'logo':'logo-yamaha.jpg'},
 {'id' : 2, 'libelle':'Honda', 'logo':'logo-Honda.png'},
 {'id' : 3, 'libelle':'Kawasaki','logo':'logo-kawasaki.jpg'},
 {'id' : 4, 'libelle':'BMW', 'logo':'logo-bmw.png'},
 {'id' : 5, 'libelle':'Suzuki', 'logo':'logo-Suzuki.png'},
 {'id' : 6, 'libelle':'Triumph','logo':'logo-Triumph.jpg'},
 {'id' : 7, 'libelle':'Piaggio','logo':'logo-Piaggio.png'},
 {'id' : 8, 'libelle':'KTM', 'logo':'logo-KTM.png'},
 {'id' : 9, 'libelle':'Ducati', 'logo':'logo-Ducati.png'},
 {'id' : 10, 'libelle':'Harley Davidson', 'logo':'logo-Harley-Davidson.png'},
 {'id' : 11, 'libelle':'Kymco', 'logo':'logo-kymco.jpg'},
 {'id' : 12, 'libelle':'Aprilia','logo':'logo-aprilia.jpg'}
]

motos = [
 {'id' : 1, 'nomMoto':'T-MAX', 'puissance':400, 'DateMiseEnCirculation':'2012-06-15', 'couleur':'black', 'marque_id':1, 'photo':'T-MAX-noir.jpg'},
 {'id' : 2, 'nomMoto':'Niken', 'puissance':350, 'DateMiseEnCirculation':'2007-06-15', 'couleur':'yellow', 'marque_id':1, 'photo':'niken.jpg'},
 {'id' : 3, 'nomMoto':'MT09', 'puissance':250, 'DateMiseEnCirculation':'2015-06-15', 'couleur':'red', 'marque_id':1, 'photo':'mt09.jpg'},
 {'id' : 4, 'nomMoto':'X-MAX', 'puissance':450, 'DateMiseEnCirculation':'2019-06-15', 'couleur':'orange', 'marque_id':1, 'photo':'xmax.jpg'},
 {'id' : 5, 'nomMoto':'MT09-Tracer', 'puissance':100, 'DateMiseEnCirculation':'2001-06-15', 'couleur':'purple', 'marque_id':1, 'photo':'mt09tracer.jpg'},
 {'id' : 6, 'nomMoto':'Africa Twin', 'puissance':500, 'DateMiseEnCirculation':'1999-07-21', 'couleur':'white', 'marque_id':2, 'photo':'AFRICA_TWIN.jpg'},
 {'id' : 7, 'nomMoto':'Pan European', 'puissance':1500, 'DateMiseEnCirculation':'2000-09-30', 'couleur':'black', 'marque_id':2, 'photo':'panEuropean.jpg'},
 {'id' : 8, 'nomMoto':'Sh','puissance':150, 'DateMiseEnCirculation':'2020-09-30', 'couleur':'black', 'marque_id':2, 'photo':'sh.jpg'},
 {'id' : 8, 'nomMoto':'Swing', 'puissance':200, 'DateMiseEnCirculation':'2021-09-30', 'couleur':'black', 'marque_id':2, 'photo':'swing.jpg'},
 {'id' : 10, 'nomMoto':'PS','puissance':6, 'DateMiseEnCirculation':'2017-09-30', 'couleur':'black', 'marque_id':2, 'photo':'ps.jpeg'},
 {'id' : 11, 'nomMoto':'Deauville', 'puissance':100, 'DateMiseEnCirculation':'2010-09-30', 'couleur':'black', 'marque_id':2, 'photo':'deauville.jpg'},
 {'id' : 12, 'nomMoto':'A1','puissance':100, 'DateMiseEnCirculation':'2025-08-27', 'couleur':'green', 'marque_id':3, 'photo':'a1.jpg'},
 {'id' : 13, 'nomMoto':'H2','puissance':1000, 'DateMiseEnCirculation':'2020-08-27', 'couleur':'green', 'marque_id':3, 'photo':'h2.jpg'},
 {'id' : 14, 'nomMoto':'VN','puissance':500, 'DateMiseEnCirculation':'2024-08-27', 'couleur':'green', 'marque_id':3, 'photo':'vn.jpg'},
 {'id' : 15, 'nomMoto':'Z', 'puissance':200, 'DateMiseEnCirculation':'2023-08-27', 'couleur':'green', 'marque_id':3, 'photo':'z.jpg'},
 {'id' : 16, 'nomMoto':'Ninja 400', 'puissance':400, 'DateMiseEnCirculation':'2022-08-27', 'couleur':'green', 'marque_id':3, 'photo':'ninja400.jpg'},
 {'id' : 17, 'nomMoto':'Vulcan 650', 'puissance':650, 'DateMiseEnCirculation':'2021-08-27', 'couleur':'green', 'marque_id':3, 'photo':'vulcan250.jpg'},
 {'id' : 18, 'nomMoto':'K 1600', 'puissance':1600, 'DateMiseEnCirculation':'2010-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'k1600.jpg'},
 {'id' : 19, 'nomMoto':'F 900 XR', 'puissance':900, 'DateMiseEnCirculation':'2011-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'f900xr.jpg'},
 {'id' : 20, 'nomMoto':'R 1250 R', 'puissance':1250, 'DateMiseEnCirculation':'2012-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'r1250r.jpeg'},
 {'id' : 21, 'nomMoto':'R 1200 RT', 'puissance':1200, 'DateMiseEnCirculation':'2013-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'r1200rt.jpg'},
 {'id' : 22, 'nomMoto':'R 900 RT', 'puissance':900, 'DateMiseEnCirculation':'2014-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'r900rt.jpg'},
 {'id' : 23, 'nomMoto':'S 1000 SR', 'puissance':1000, 'DateMiseEnCirculation':'2015-08-27', 'couleur':'blue', 'marque_id':4, 'photo':'s1000sr.jpeg'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


INSERT INTO marque_moto(id_marque, libelle,logo) VALUES
    (NULL,'Yamaha','logo-yamaha.jpg'),
    (NULL,'Honda','logo-Honda.png'),
    (NULL,'Kawasaki','logo-kawasaki.jpg'),
    (NULL,'BMW','logo-bmw.png'),
    (NULL,'Suzuki','logo-Suzuki.png'),
    (NULL,'Triumph','logo-Triumph.jpg'),
    (NULL,'Piaggio','logo-Piaggio.png'),
    (NULL,'KTM','logo-KTM.png'),
    (NULL,'Ducati','logo-Ducati.png'),
    (NULL,'Harley Davidson','logo-Harley-Davidson.png'),
    (NULL,'Kymco','logo-kymco.jpg'),
    (NULL,'Aprilia','logo-aprilia.jpg');


INSERT INTO moto(id_moto, nom_moto, puissance, date_premiere_mise_en_circulation, couleur, prix, marque_id, photo) VALUES
    (NULL,'T-MAX', 400, '2012-06-15', 'Noir' ,1000, 1,'T-MAX-noir.jpg'),
    (NULL,'Niken', 350, '2007-06-15', 'Jaune' ,1100, 1,'niken.jpg'),
    (NULL,'MT09', 250, '2015-06-15', 'Rouge' ,1200, 1,'mt09.jpg'),
    (NULL,'X-MAX', 450, '2019-06-15', 'Orange' ,1300, 1,'xmax.jpg'),
    (NULL,'MT09-Tracer', 100, '2001-06-15', 'Violet' ,1400, 1,'mt09tracer.jpg'),
    (NULL,'Africa Twin', 500, '1999-07-21', 'White' ,1500, 2,'AFRICA_TWIN.jpg'),
    (NULL,'Pan European', 1500, '20-09-30', 'Black' ,1600, 2,'panEuropean.jpg'),
    (NULL,'Sh', 150, '2020-09-30', 'Black' ,1700, 2,'sh.jpg'),
    (NULL,'Swing', 200, '2021-09-30', 'Black' ,1800, 2,'swing.jpg'),
    (NULL,'PS', 6, '2017-09-30', 'Black' ,1900, 2,'ps.jpeg'),
    (NULL,'Deauville', 100, '2010-09-30', 'Black' ,2000, 2,'deauville.jpg'),
    (NULL,'A1', 100, '2025-08-27', 'Green' ,2100, 3,'a1.jpg'),
    (NULL,'H2', 1000, '2020-08-27', 'Green' ,2200, 3,'h2.jpg'),
    (NULL,'VN', 500, '2024-08-27', 'Green' ,2300, 3,'vn.jpg'),
    (NULL,'Z', 200, '2023-08-27', 'Green' ,2400, 3,'z.jpg'),
    (NULL,'Ninja 400', 400, '2022-08-27', 'Green' ,2500, 3,'ninja400.jpg'),
    (NULL,'Vulcan 650', 650, '2021-08-27', 'Green' ,2600, 3,'vulcan250.jpg'),
    (NULL,'K 1600', 1600, '2010-08-27', 'Blue' ,2700, 4,'k1600.jpg'),
    (NULL,'F 900 XR', 900, '2011-08-27', 'Blue' ,2800, 4,'f900xr.jpg'),
    (NULL,'R 1250 R', 1250, '2012-08-27', 'Blue' ,2900, 4,'r1250r.jpeg'),
    (NULL,'R 1200 RT', 1200, '2013-08-27', 'Blue' ,3000, 4,'r1200rt.jpg'),
    (NULL,'R 900 RT', 900, '2014-08-27', 'Blue' ,3100, 4,'r900rt.jpg'),
    (NULL,'S 1000 SR', 1000, '2015-08-27', 'Blue' ,3200, 4,'s1000sr.jpeg');



sujet 23

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_region /region/show GET affiche les regions retourne la vue show_region.html
add_region /region/add GET affiche le formulaire pour ajouter une region retourne la vue add_region.html
valid_add_region /region/add POST validation (soumission) du formulaire pour ajouter une region redirection sur la route /region/show
delete_region /region/delete GET suppression d’une region redirection sur la route /region/show
edit_region /region/edit GET affiche le formulaire pour modifier une region retourne la vue edit_region.html
valid_edit_region /region/edit POST validation (soumission) du formulaire pour modifier une region redirection sur la route /region/show
show_club /club-echecs/show GET affiche les clubs retourne la vue show_club.html
add_club /club-echecs/add GET affiche le formulaire pour ajouter un club retourne la vue add_club.html
valid_add_club /club-echecs/add POST validation (soumission) du formulaire pour ajouter un club redirection sur la route /club-echecs/show
delete_club /club-echecs/delete GET suppression d’un club redirection sur la route /club-echecs/show
edit_club /club-echecs/edit GET affiche le formulaire pour modifier un club retourne la vue edit_club.html
valid_edit_club /club-echecs/edit POST validation (soumission) du formulaire pour modifier un club redirection sur la route /club-echecs/show
filtre_club /club-echecs/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_club_filtre_show.html




########################################################### Sujet  23

regions = [
   {'id' : 1 ,'nomRegion':'FrancheComte'},
   {'id' : 2 ,'nomRegion':'IleDeFrance'},
   {'id' : 3 ,'nomRegion':'Bretagne'},
   {'id' : 4 ,'nomRegion':'Occitanie'},
]

clubsEchecs = [
   {'id' : 1 ,'nomClub':'BelfortEchecs', 'nbAdherent':'67', 'dateCreation':'1977-01-31', 'prixCotisation':'100', 'region_id':1, 'image':'BelfortEchecs.jpg'},
   {'id' : 2 ,'nomClub':'EchiquierQuimpérois', 'nbAdherent':'36', 'dateCreation':'1983-06-27', 'prixCotisation':'90', 'region_id':3, 'image':'EchiquierQuimperois.png'},
   {'id' : 3 ,'nomClub':'TremblayEnFrance', 'nbAdherent':'109', 'dateCreation':'1982-03-05', 'prixCotisation':'50', 'region_id':2, 'image':'TremblayEnFrance.jpg'},
   {'id' : 4 ,'nomClub':'EchiquierLedonien', 'nbAdherent':'25', 'dateCreation':'1966-06-12', 'prixCotisation':'71', 'region_id':1, 'image':'EchiquierLedonien.jpg'},
   {'id' : 5 ,'nomClub':'EchiquierNimois' , 'nbAdherent':'85', 'dateCreation':'1987-03-21', 'prixCotisation':'120', 'region_id':4, 'image':'EchiquierNimois.jpg'},
   {'id' : 6 ,'nomClub':'LuteceEchecs', 'nbAdherent':'89', 'dateCreation':'1957-08-05', 'prixCotisation':'420', 'region_id':2, 'image':'LuteceEchecs.jpg'},
   {'id' : 7 ,'nomClub':'UsamEchiquierBrestois', 'nbAdherent':'73', 'dateCreation':'1964-06-25', 'prixCotisation':'100', 'region_id':3, 'image':'UsamEchiquierBrestois.jpg'},
   {'id' : 8 ,'nomClub':'EchecsClubMontpellier' , 'nbAdherent':'119', 'dateCreation':'1981-04-15', 'prixCotisation':'85', 'region_id':4, 'image':'EchecsClubMontpellier.jpg'},
   {'id' : 9 ,'nomClub':'ClichyEchecs92', 'nbAdherent':'85', 'dateCreation':'1961-10-07', 'prixCotisation':'189', 'region_id':2, 'image':'ClichyEchecs92.jpg'},
   {'id' : 10 ,'nomClub':'RoiBlancMontbeliard', 'nbAdherent':'31', 'dateCreation':'1950-02-10', 'prixCotisation':'76', 'region_id':1, 'image':'RoiBlancMontbeliard.jpg'},
   {'id' : 11 ,'nomClub':'EchiquierToulousain', 'nbAdherent':'88', 'dateCreation':'1978-03-18', 'prixCotisation':'140', 'region_id':4, 'image':'EchiquierToulousain.png'},
   {'id' : 12 ,'nomClub':'RennesPaulBert', 'nbAdherent':'89', 'dateCreation':'1959-10-07', 'prixCotisation':'115', 'region_id':3, 'image':'RennesPaulBert.jpg'}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


--  sujet 23 : club / region       **

INSERT INTO region (id_region, nom_region) VALUES
   ( NULL ,'FrancheComte'),
   ( NULL ,'IleDeFrance'),
   ( NULL ,'Bretagne'),
   ( NULL ,'Occitanie');

INSERT INTO club_echecs (id_club, nom_club, nb_adherent, date_creation, prix_cotisation, region_id, image) VALUES
   (NULL ,'BelfortEchecs','67','1977-01-31','100',1,'BelfortEchecs.jpg'),
   (NULL ,'EchiquierQuimpérois', '36', '1983-06-27', '90', 3,'EchiquierQuimperois.png'),
   (NULL ,'TremblayEnFrance', '109', '1982-03-05', '50', 2,'TremblayEnFrance.jpg'),
   (NULL ,'EchiquierLedonien', '25', '1966-06-12', '71', 1,'EchiquierLedonien.jpg'),
   (NULL ,'EchiquierNimois' , '85', '1987-03-21', '120', 4,'EchiquierNimois.jpg'),
   (NULL ,'LuteceEchecs', '89', '1957-08-05', '420', 2,'LuteceEchecs.jpg'),
   (NULL ,'UsamEchiquierBrestois', '73', '1964-06-25', '100', 3,'UsamEchiquierBrestois.jpg'),
   (NULL ,'EchecsClubMontpellier' , '119', '1981-04-15', '85', 4,'EchecsClubMontpellier.jpg'),
   (NULL ,'ClichyEchecs92', '85', '1961-10-07', '189', 2,'ClichyEchecs92.jpg'),
   (NULL ,'RoiBlancMontbeliard', '31', '1950-02-10', '76', 1,'RoiBlancMontbeliard.jpg'),
   (NULL ,'EchiquierToulousain', '88', '1978-03-18', '140', 4,'EchiquierToulousain.png'),
   (NULL ,'RennesPaulBert', '89', '1959-10-07', '115', 3,'RennesPaulBert.jpg');



sujet 24

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_ville /ville/show GET affiche les villes retourne la vue show_ville.html
add_ville /ville/add GET affiche le formulaire pour ajouter une ville retourne la vue add_ville.html
valid_add_ville /ville/add POST validation (soumission) du formulaire pour ajouter une ville redirection sur la route /ville/show
delete_ville /ville/delete GET suppression d’une ville redirection sur la route /ville/show
edit_ville /ville/edit GET affiche le formulaire pour modifier une ville retourne la vue edit_ville.html
valid_edit_ville /ville/edit POST validation (soumission) du formulaire pour modifier une ville redirection sur la route /ville/show
show_parking /parking-ville/show GET affiche les parkings retourne la vue show_parking.html
add_parking /parking-ville/add GET affiche le formulaire pour ajouter un parking retourne la vue add_parking.html
valid_add_parking /parking-ville/add POST validation (soumission) du formulaire pour ajouter un parking redirection sur la route /parking-ville/show
delete_parking /parking-ville/delete GET suppression d’un parking redirection sur la route /parking-ville/show
edit_parking /parking-ville/edit GET affiche le formulaire pour modifier un parking retourne la vue edit_parking.html
valid_edit_parking /parking-ville/edit POST validation (soumission) du formulaire pour modifier un parking redirection sur la route /parking-ville/show
filtre_parking /parking-ville/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_parking_filtre_show.html



########################################################### Sujet  24

villes = [
    {'id':1,'nomVille':'Lyon'},
    {'id':2,'nomVille':'Lons-Le-Saunier'},
    {'id':3,'nomVille':'Belfort'},
    {'id':4,'nomVille':'Besançon'},
    {'id':5,'nomVille':'Nara'},
    {'id':6,'nomVille':'Montréal'}
]


parkingsVilles = [
    {'id':1,'nomParking':'Saint-Julien', 'nbPlaces':'200', 'dateConstruction':'2011-09-06', 'adresse':'40 rue de Barre', 'prixPlaceHeure' :'51.00', 'Ville_id':'2', 'photo':'parking_1.png'},
    {'id':2,'nomParking':'SuperPark', 'nbPlaces':'100', 'dateConstruction':'2019-01-05', 'adresse':'5 avenue Julien Humbey', 'prixPlaceHeure' :'04.00', 'Ville_id':'1', 'photo':'parking_2.png'},
    {'id':3,'nomParking':'ParkingSuper', 'nbPlaces':'340', 'dateConstruction':'2007-03-03', 'adresse':'chemin Hortense Besson', 'prixPlaceHeure' :'02.20', 'Ville_id':'3', 'photo':'parking_3.png'},
    {'id':4,'nomParking':'Nara Parking Lot', 'nbPlaces':'900', 'dateConstruction':'2011-02-21', 'adresse':'Suimoncho, Nara, 630-8208', 'prixPlaceHeure' :'01.30', 'Ville_id':'5', 'photo':'parking_4.png'},
    {'id':5,'nomParking':'Parking 11 novembre', 'nbPlaces':'10002', 'dateConstruction':'2013-03-16', 'adresse':'5 avenue Julien Humbey', 'prixPlaceHeure' :'13.00', 'Ville_id':'1', 'photo':'parking_5.png'},
    {'id':6,'nomParking':'Parking Rue Richebourg', 'nbPlaces':'3323', 'dateConstruction':'2001-02-14', 'adresse':'51 Rue Richebourg', 'prixPlaceHeure' :'21.00', 'Ville_id':'4', 'photo':'parking_6.png'},
    {'id':7,'nomParking':'Parking de la tête d or', 'nbPlaces':'230', 'dateConstruction':'2011-01-23', 'adresse':'58 chemin Renard', 'prixPlaceHeure' :'25.00', 'Ville_id':'1', 'photo':'parking_7.png'},
    {'id':8,'nomParking':'Saint-Patoche', 'nbPlaces':'20', 'dateConstruction':'2008-08-16', 'adresse':'94 place Anouk Pinto', 'prixPlaceHeure' :'35.00', 'Ville_id':'6', 'photo':'parking_8.png'},
    {'id':9,'nomParking':'Place du Romain', 'nbPlaces':'243', 'dateConstruction':'2020-03-26', 'adresse':'86-1 Zoshicho', 'prixPlaceHeure' :'31.40', 'Ville_id':'5', 'photo':'parking_9.png'},
    {'id':10,'nomParking':'Parking Saint-Bernard', 'nbPlaces':'92', 'dateConstruction':'2015-07-20', 'adresse':'rue Schneider', 'prixPlaceHeure' :'04.30', 'Ville_id':'4', 'photo':'parking_10.png'},
    {'id':11,'nomParking':'Parking 11 Novembre', 'nbPlaces':'394', 'dateConstruction':'2013-03-19', 'adresse':'Place du 11 Novembre', 'prixPlaceHeure' :'5.10', 'Ville_id':'2', 'photo':'parking_11.png'},
    {'id':12,'nomParking':'Parking gare', 'nbPlaces':'1297', 'dateConstruction':'2003-09-06', 'adresse':'5 avenue Julien Humbey', 'prixPlaceHeure' :'5.90', 'Ville_id':'1', 'photo':'parking_12.png'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 24 : parking / ville        **

INSERT INTO ville(id_ville,nom_ville) VALUES 
(NULL,'Lyon'),
(NULL,'Lons-Le-Saunier'),
(NULL,'Belfort'),
(NULL,'Besançon'),
(NULL,'Nara'),
(NULL,'Montréal');




INSERT INTO parking_ville(id_parking, nom_parking,nb_places,date_construction,adresse,prix_place,ville_id, photo) VALUES
  (NULL,'Saint-Julien', 200, '2011-09-06', '40 rue de Barre',51.00,2, 'parking_1.png'),
  (NULL,'SuperPark', 100, '2019-01-05', '5 avenue Julien Humbey', 04.00,1, 'parking_2.png'),
  (NULL,'ParkingSuper', 340, '2007-03-03', 'chemin Hortense Besson', 02.20, 3, 'parking_3.png'),
  (NULL,'Nara Parking Lot', 900, '2011-02-21', 'Suimoncho, Nara, 630-8208', 01.30, 5, 'parking_4.png'),
  (NULL,'Parking 11 novembre', 10002, '2013-03-16', '5 avenue Julien Humbey', 13.00, 1, 'parking_5.png'),
  (NULL,'Parking Rue Richebourg', 3323, '2001-02-14', '51 Rue Richebourg', 21.00, 4, 'parking_6.png'),
  (NULL,'Parking de la tete d or', 230, '2011-01-23', '58 chemin Renard', 25.00, 1, 'parking_7.png'),
  (NULL,'Saint-Patoche', 20, '2008-08-16','94 place Anouk Pinto', 35.00, 6, 'parking_8.png'),
  (NULL,'Place du Romain', 243, '2020-03-26', '86-1 Zoshicho', 31.40, 5, 'parking_9.png'),
  (NULL,'Parking Saint-Bernard', 92, '2015-07-20', 'rue Schneider',04.30, 4, 'parking_10.png'),
  (NULL,'Parking 11 Novembre', 394, '2013-03-19', 'Place du 11 Novembre', 5.10, 2, 'parking_11.png'),
  (NULL,'Parking gare', 1297, '2003-09-06', '5 avenue Julien Humbey', 5.90, 1, 'parking_12.png');



sujet 25

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_type_ski /type-ski/show GET affiche les types de skis retourne la vue show_type_ski.html
add_type_ski /type-ski/add GET affiche le formulaire pour ajouter un type de ski retourne la vue add_type_ski.html
valid_add_type_ski /type-ski/add POST validation (soumission) du formulaire pour ajouter un type de ski redirection sur la route /type-ski/show
delete_type_ski /type-ski/delete GET suppression d’un type de ski redirection sur la route /type-ski/show
edit_type_ski /type-ski/edit GET affiche le formulaire pour modifier un type de ski retourne la vue edit_type_ski.html
valid_edit_type_ski /type-ski/edit POST validation (soumission) du formulaire pour modifier un type de ski redirection sur la route /type-ski/show
show_ski /ski/show GET affiche les skis retourne la vue show_ski.html
add_ski /ski/add GET affiche le formulaire pour ajouter un ski retourne la vue add_ski.html
valid_add_ski /ski/add POST validation (soumission) du formulaire pour ajouter un ski redirection sur la route /ski/show
delete_ski /ski/delete GET suppression d’un ski redirection sur la route /ski/show
edit_ski /ski/edit GET affiche le formulaire pour modifier un ski retourne la vue edit_ski.html
valid_edit_ski /ski/edit POST validation (soumission) du formulaire pour modifier un ski redirection sur la route /ski/show
filtre_ski /ski/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_ski_filtre_show.html



########################################################### Sujet  25


typeSki = [
    {'id' : 1 ,'libelleType':'Mini-ski'},
    {'id' : 2 ,'libelleType':'Ski de fond'},
    {'id' : 3 ,'libelleType':'Ski de piste'},
    {'id' : 4 ,'libelleType':'Ski de randonnée'},
    {'id' : 5 ,'libelleType':'Freestyle'},
    {'id' : 6 ,'libelleType':'Freeride'},
]
skis = [
   {'id' : 1 ,'modeleSki':'Wedze 500', 'dateAchat':'2019-05-20', 'etat':'Très Bon', 'prixAchat':'240', 'prixLocation':'50', 'taille':'172', 'typeSki_id':5, 'imageSki': 'wedze_500.jpg'},
   {'id' : 2 ,'modeleSki':'Wedze 500 Slash 100', 'dateAchat':'2020-09-13', 'etat':'Neuf', 'prixAchat':'360', 'prixLocation':'75', 'taille':'184', 'typeSki_id':6, 'imageSki': 'wedze_500_slash_100.jpg'},
   {'id' : 3 ,'modeleSki':'Inovix XC S 500', 'dateAchat':'2019-11-19', 'etat':'Assez Bon', 'prixAchat':'155', 'prixLocation':'30', 'taille':'205', 'typeSki_id':2, 'imageSki': 'inovix_xc_s_500.jpg'},
   {'id' : 4 ,'modeleSki':'Rossignol Experience 80', 'dateAchat':'2018-09-12', 'etat':'Très Bon', 'prixAchat':'380', 'prixLocation':'38', 'taille':'174', 'typeSki_id':3, 'imageSki': 'rossignol_experience_80.jpg'},
   {'id' : 5 ,'modeleSki':'Wedze Mountain touring MT85', 'dateAchat':'2018-07-11', 'etat':'Très Bon', 'prixAchat':'575', 'prixLocation':'56', 'taille':'176', 'typeSki_id':4, 'imageSki': 'wedze_mountain_touring_mt85.jpg'},
   {'id' : 6 ,'modeleSki':'Atomic Redster X5', 'dateAchat':'2019-05-20', 'etat':'Assez Bon', 'prixAchat':'370', 'prixLocation':'32', 'taille':'177', 'typeSki_id':3, 'imageSki': 'atomic_redster_x5.png'},
   {'id' : 7 ,'modeleSki':'Rossignol Experience 84', 'dateAchat':'2019-11-01', 'etat':'Bon', 'prixAchat':'540', 'prixLocation':'35', 'taille':'184', 'typeSki_id':3, 'imageSki': 'rossignol_experience_84.png'},
   {'id' : 8 ,'modeleSki':'Salomon Max 8S', 'dateAchat':'2017-02-11', 'etat':'Très Bon', 'prixAchat':'500', 'prixLocation':'50', 'taille':'165', 'typeSki_id':3, 'imageSki': 'salomon_max_8s.png'},
   {'id' : 9 ,'modeleSki':'Atomic Vantage 77 TI', 'dateAchat':'2019-05-20', 'etat':'Bon', 'prixAchat':'420', 'prixLocation':'41', 'taille':'156', 'typeSki_id':3, 'imageSki': 'atomic_vantage_77_ti.jpg'},
   {'id' : 10 ,'modeleSki':'Dynastar Vertical Deer', 'dateAchat':'2017-11-25', 'etat':'Mauvais', 'prixAchat':'697', 'prixLocation':'22', 'taille':'180', 'typeSki_id':4, 'imageSki': 'dynastar_vertical_deer.jpg'},
   {'id' : 11 ,'modeleSki':'Elan Ripstick 96', 'dateAchat':'2020-04-16', 'etat':'Très Bon', 'prixAchat':'490', 'prixLocation':'42', 'taille':'181', 'typeSki_id':6, 'imageSki': 'elan_ripstick_96.jpg'},
   {'id' : 12 ,'modeleSki':'Salomon Distance M10 GW L90', 'dateAchat':'2019-08-30', 'etat':'Neuf', 'prixAchat':'299', 'prixLocation':'34', 'taille':'125', 'typeSki_id':1, 'imageSki': 'salomon_distance_m10_gw_l90.jpg'},
   {'id' : 13 ,'modeleSki':'Rossignol Freeze Xpress GW', 'dateAchat':'2020-01-04', 'etat':'Très Bon', 'prixAchat':'269', 'prixLocation':'21', 'taille':'118', 'typeSki_id':1, 'imageSki': 'rossignol_freeze_xpress_gw.jpg'},
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 25 : ski / typeSki          **


INSERT INTO types_ski (id_type_ski, libelle_type_ski)
VALUES (NULL,'Mini-ski'),
       (NULL,'Ski de fond'),
       (NULL,'Ski de piste'),
       (NULL,'Ski de randonnée'),
       (NULL,'Freestyle'),
       (NULL,'Freeride');

INSERT INTO ski (id_ski, modele_ski, date_achat_ski, etat_ski, prix_achat_ski, prix_location_ski, taille_ski, image_ski, id_type_ski)
VALUES (NULL,'Wedze 500', '2019-05-20', 'Très Bon', 240, 50, 172, 'wedze_500.jpg', 5),
       (NULL,'Wedze 500 Slash 100', '2020-09-13', 'Neuf', 360, 75, 184, 'wedze_500_slash_100.jpg', 6),
       (NULL,'Inovix XC S 500', '2019-11-19', 'Assez Bon', 155, 30, 205, 'inovix_xc_s_500.jpg', 2),
       (NULL,'Rossignol Experience 80', '2018-09-12', 'Très Bon', 380, 38, 174, 'rossignol_experience_80.jpg', 3),
       (NULL,'Wedze Mountain touring MT85', '2018-07-11', 'Très Bon', 575, 56, 176, 'wedze_mountain_touring_mt85.jpg', 4),
       (NULL,'Atomic Redster X5', '2019-05-20', 'Assez Bon', 370, 32, 177, 'atomic_redster_x5.png', 3),
       (NULL,'Rossignol Experience 84', '2019-11-03', 'Bon', 540, 35, 184, 'rossignol_experience_84.png', 3),
       (NULL,'Salomon Max 8S', '2017-02-11', 'Très Bon', 500, 50, 165, 'salomon_max_8s.png', 3),
       (NULL,'Atomic Vantage 77 TI', '2019-05-20', 'Bon', 420, 41, 156, 'atomic_vantage_77_ti.jpg', 3),
       (NULL,'Dynastar Vertical Deer', '2017-11-25', 'Mauvais', 697, 22, 180, 'dynastar_vertical_deer.jpg', 4),
       (NULL,'Elan Ripstick 96', '2020-04-16', 'Très Bon', 490, 42, 181, 'elan_ripstick_96.jpg', 6),
       (NULL,'Salomon Distance M10 GW L90', '2019-08-30', 'Neuf', 299, 34, 125, 'salomon_distance_m10_gw_l90.jpg', 1),
       (NULL,'Rossignol Freeze Xpress GW', '2020-01-04', 'Très Bon', 269, 21, 118, 'rossignol_freeze_xpress_gw.jpg', 1);



sujet 26

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

Nom fonction Route Méthode description action (réponse HTTP)
show_layout / GET page d’accueil retourne la vue layout.html
show_matiere /matiere-cours/show GET affiche les matieres retourne la vue show_matiere.html
add_matiere /matiere-cours/add GET affiche le formulaire pour ajouter une matiere retourne la vue add_matiere.html
valid_add_matiere /matiere-cours/add POST validation (soumission) du formulaire pour ajouter une matiere redirection sur la route /matiere-cours/show
delete_matiere /matiere-cours/delete GET suppression d’une matiere redirection sur la route /matiere-cours/show
edit_matiere /matiere-cours/edit GET affiche le formulaire pour modifier une matiere retourne la vue edit_matiere.html
valid_edit_matiere /matiere-cours/edit POST validation (soumission) du formulaire pour modifier une matiere redirection sur la route /matiere-cours/show
show_enseignant /enseignant/show GET affiche les enseignants retourne la vue show_enseignant.html
add_enseignant /enseignant/add GET affiche le formulaire ajouter pour les informations sur un enseignant retourne la vue add_enseignant.html
valid_add_enseignant /enseignant/add POST validation (soumission) du formulaire pour ajouter les informations sur un enseignant redirection sur la route /enseignant/show
delete_enseignant /enseignant/delete GET suppression d’un enseignant redirection sur la route /enseignant/show
edit_enseignant /enseignant/edit GET affiche le formulaire pour modifier les informations sur un enseignant retourne la vue edit_enseignant.html
valid_edit_enseignant /enseignant/edit POST validation (soumission) du formulaire pour modifier un enseignant redirection sur la route /enseignant/show
filtre_enseignant /enseignant/filtre [GET] affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_enseignant_filtre_show.html



########################################################### Sujet  26

matieresCours = [
    {'id' : 1 ,'libelleMatiere':'Mathématiques'},
    {'id' : 2 ,'libelleMatiere':'Francais'},
    {'id' : 3 ,'libelleMatiere':'Physique-Chimie'},
    {'id' : 4 ,'libelleMatiere':'Sport'}
]
enseignants = [
    {'id':1,'nomEnseignant':'Jean Sansouci', 'salaire':'3452', 'dateNaissance':'1965-12-17', 'statut':'Agregé', 'adresseAdministrative' :'Collège Jules Ferry', 'heureDeCours':'15', 'photo':'employe1.png', 'matiere_id':2},
    {'id':2,'nomEnseignant':'Pascal Brian', 'salaire':'2754', 'dateNaissance':'1981-02-25', 'statut':'Agregé', 'adresseAdministrative' :'Lycée Condorcet', 'heureDeCours':'15', 'photo':'employe2.png', 'matiere_id':1},
    {'id':3,'nomEnseignant':'Charle Auclair', 'salaire':'2966', 'dateNaissance':'1977-06-05', 'statut':'Agregé', 'adresseAdministrative' :'Lycée Nelson Mandela', 'heureDeCours':'15', 'photo':'employe3.png', 'matiere_id':2},
    {'id':4,'nomEnseignant':'Maxime Chabot', 'salaire':'1772', 'dateNaissance':'1972-10-16', 'statut':'PEGC', 'adresseAdministrative' :'Collège Guynemer', 'heureDeCours':'23', 'photo':'employe4.png', 'matiere_id':1},
    {'id':5,'nomEnseignant':'Neil Dandonneau', 'salaire':'1498', 'dateNaissance':'1975-07-22', 'statut':'PEGC', 'adresseAdministrative' :'Collège Guynemer', 'heureDeCours':'21', 'photo':'employe5.png' , 'matiere_id':1},
    {'id':6,'nomEnseignant':'Patric Barteaux', 'salaire':'1945', 'dateNaissance':'1966-10-03', 'statut':'PEGC', 'adresseAdministrative' :'Collège Albert Camus', 'heureDeCours':'23', 'photo':'employe6.png', 'matiere_id':3},
    {'id':7,'nomEnseignant':'Alexia Tardif', 'salaire':'1290', 'dateNaissance':'1968-06-12', 'statut':'Contractuel', 'adresseAdministrative' :'Lycée Condorcet', 'heureDeCours':'18', 'photo':'employe7.png', 'matiere_id':3},
    {'id':8,'nomEnseignant':'Sylvie Crête', 'salaire':'1254', 'dateNaissance':'1973-07-18', 'statut':'Contractuel', 'adresseAdministrative' :'Lycée Nelson Mandela', 'heureDeCours':'19', 'photo':'employe8.png', 'matiere_id':3},
    {'id':9,'nomEnseignant':'Minette Migneault', 'salaire':'2241', 'dateNaissance':'1982-09-06', 'statut':'Certifié', 'adresseAdministrative' :'Collège Guynemer', 'heureDeCours':'18', 'photo':'employe10.png', 'matiere_id':4},
    {'id':10,'nomEnseignant':'Françoise Lefèbvre', 'salaire':'2621', 'dateNaissance':'1974-09-29', 'statut':'Certifié', 'adresseAdministrative' :'Collège Jules Ferry', 'heureDeCours':'18', 'photo':'employe11.png', 'matiere_id':4}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- # sujet 26 : enseignant / matiere   **

INSERT INTO matiere_cours (id_matiere, libelle_matiere) VALUES 
(NULL, 'Mathématiques'),
(NULL, 'Français'),
(NULL, 'Physique-Chimie'),
(NULL, 'Sport');


INSERT INTO enseignant (id_enseignant, nom_enseignant, salaire, date_naissance, statut, adresse_administrative, nb_heure_cours, photo ,  matiere_id)
VALUES
    (NULL , 'Jean Sansouci', 3452.00, '1965-12-17', 'Agregé', 'Collège Jules Ferry', 15, 'employe1.png' , 2),
    (NULL , 'Pascal Brian', 2754.00, '1981-02-25', 'Agregé', 'Lycée Condorcet', 15, 'employe2.png', 1),
    (NULL , 'Charle Auclair', 2966.00, '1977-06-05', 'Agregé', 'Lycée Nelson Mandela', 15, 'employe3.png', 2),
    (NULL , 'Maxime Chabot', 1772.00, '1972-10-16', 'PEGC', 'Collège Guynemer', 23, 'employe4.png', 1),
    (NULL , 'Neil Dandonneau', 1498.00, '1975-07-22', 'PEGC', 'Collège Guynemer', 21, 'employe5.png', 1),
    (NULL , 'Patric Barteaux', 1945.00, '1966-10-03', 'PEGC', 'Collège Albert Camus', 23, 'employe6.png', 3),
    (NULL , 'Alexia Tardif', 1290.00, '1968-06-12', 'Contractuel', 'Lycée Condorcet', 18, 'employe7.png', 3),
    (NULL , 'Sylvie Crête', 1254.00, '1973-07-18', 'Contractuel', 'Lycée Nelson Mandela', 19, 'employe8.png', 3),
    (NULL , 'Minette Migneault', 2241.00, '1982-09-06', 'Certifié', 'Collège Guynemer', 18, 'employe10.png', 4),
    (NULL , 'Françoise Lefèbvre', 2621.00, '1974-09-29', 'Certifié','Collège Jules Ferry', 18, 'employe11.png', 4);



sujet 27

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

tableau des routes


Nom fonction Route Méthode description action (réponse HTTP)
show_accueil / GET page d’accueil retourne la vue layout.html
show_type_foret /type-foret/show GET affiche les types de forets retourne la vue show_type_foret.html
add_type_foret /type-foret/add GET affiche le formulaire pour ajouter un type de foret retourne la vue add_type_foret.html
valid_add_type_foret /type-foret/add POST validation (soumission) du formulaire pour ajouter un type de foret redirection sur la route /type-foret/show
delete_type_foret /type-foret/delete GET suppression d’un type de foret redirection sur la route /type-foret/show
edit_type_foret /type-foret/edit GET affiche le formulaire pour modifier un type de foret retourne la vue edit_type_foret.html
valid_edit_type_foret /type-foret/edit POST validation (soumission) du formulaire pour modifier un type de foret redirection sur la route /type-foret/show
show_foret /foret/show GET affiche les forets retourne la vue show_foret.html
add_foret /foret/add GET affiche le formulaire pour ajouter une foret retourne la vue add_foret.html
valid_add_foret /foret/add POST validation (soumission) du formulaire pour ajouter une foret redirection sur la route /foret/show
delete_foret /foret/delete GET suppression d’une foret redirection sur la route /foret/show
edit_foret /foret/edit GET affiche le formulaire pour modifier une foret retourne la vue edit_foret.html
valid_edit_foret /foret/edit POST validation (soumission) du formulaire pour modifier une foret redirection sur la route /foret/show
filtre_foret /foret/filtre GET affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_foret_filtre_show.html



########################################################### Sujet  27

typesForet = [
    {'id' : 1 ,'libelle':'Tropicale', 'photo':'tropicale.jpeg'},
    {'id' : 2 ,'libelle':'Taiga', 'photo':'taiga.jpg'},
    {'id' : 3 ,'libelle':'Jungle', 'photo':'jungle.jpg'},
    {'id' : 4 ,'libelle':'Sombre', 'photo':'sombre.jpg'},
    {'id' : 5 ,'libelle':'Amazonienne', 'photo':'amazonie.jpg'},
    {'id' : 6 ,'libelle':'Tempéré', 'photo':'tempere.jpg'},
]

forets = [
    {'id' : '1' ,'surface':'1500', 'dateRelevee':'2020-02-02', 'localisation':'Bangui', 'nbArbreAre':'5', 'typeForet_id':'1', 'coutEntretien':'20.5', 'photo':'img_bangui.png' },
    {'id' : '2', 'surface':'6000', 'dateRelevee':'2019-01-24', 'localisation':'Deggendorf', 'nbArbreAre':'6', 'typeForet_id':'6', 'coutEntretien':'80.3', 'photo':'img_Deggendorf.png' },
    {'id' : '3', 'surface':'7800', 'dateRelevee':'2013-08-11', 'localisation':'Manaus', 'nbArbreAre':'7', 'typeForet_id':'5', 'coutEntretien':'125.25', 'photo':'img_Manaus.png' },
    {'id' : '4', 'surface':'30', 'dateRelevee':'2015-09-12', 'localisation':'Tomsk', 'nbArbreAre':'8', 'typeForet_id':'2', 'coutEntretien':'30.2', 'photo':'img_Tomsk.png' },
    {'id' : '5', 'surface':'340', 'dateRelevee':'2020-10-23', 'localisation':'Boende', 'nbArbreAre':'9', 'typeForet_id':'3', 'coutEntretien':'80.6', 'photo':'img_Boende.png' },
    {'id' : '6', 'surface':'1500', 'dateRelevee':'2020-09-01', 'localisation':'Aokigahara', 'nbArbreAre':'10', 'typeForet_id':'Sombre', 'coutEntretien':'20.5', 'photo':'img_Aokigahara.png' },
    {'id' : '7', 'surface':'74', 'dateRelevee':'2008-08-15', 'localisation':'Blair', 'nbArbreAre':'9', 'typeForet_id':'Sombre', 'coutEntretien':'43.2', 'photo':'img_Blair.png' },
    {'id' : '8', 'surface':'25000', 'dateRelevee':'2017-02-14', 'localisation':'Jakarta', 'nbArbreAre':'8', 'typeForet_id':'1', 'coutEntretien':'13', 'photo':'img_Jakarta.png' },
    {'id' : '9', 'surface':'5300', 'dateRelevee':'2018-03-23', 'localisation':'Bussang', 'nbArbreAre':'7', 'typeForet_id':'2', 'coutEntretien':'20.7', 'photo':'img_Bussang.png' },
    {'id' : '10' ,'surface':'2000', 'dateRelevee':'2015-01-30', 'localisation':'Kupio', 'nbArbreAre':'6', 'typeForet_id':'2', 'coutEntretien':'20.7', 'photo':'img_Kupio.png'}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)


-- sujet 27 : foret / type_foret     --



INSERT INTO type_foret(id_type_foret, libelle_type, image) VALUES
(NULL ,'Tropicale','tropicale.jpeg'), -- 1
(NULL ,'Taiga','taiga.jpg'), -- 2
(NULL ,'Jungle','jungle.jpg'), -- 3
(NULL ,'Sombre','sombre.jpg'), -- 4
(NULL ,'Amazonienne','amazonie.jpg'), -- 5
(NULL ,'Tempéré','tempere.jpg'); -- 6


INSERT INTO foret (id_foret, surface,date_relevee,localisation,nb_arbre_are,type_foret_id,cout_entretien, photo) VALUES
(NULL   , 1500, '2020-02-02', 'Bangui', 5, 1, 20.5, 'img_bangui.png'),
(NULL   , 6000, '2019-01-24', 'Deggendorf', 6, 6, 80.3, 'img_Deggendorf.png' ),
(NULL   , 7800, '2013-08-11', 'Manaus', 7, 5, 125.25, 'img_Manaus.png' ),
(NULL   , 300, '2015-09-12', 'Tomsk', 8, 2, 30.2, 'img_Tomsk.png' ),
(NULL   , 340, '2020-10-23', 'Boende', 9, 3, 80.6, 'img_Boende.png' ),
(NULL   , 1500, '2020-09-01', 'Aokigahara', 10, 4, 20.5, 'img_Aokigahara.png' ),
(NULL   , 740, '2008-08-15', 'Blair', 9, 4, 43.2, 'img_Blair.png' ),
(NULL   , 25000, '2017-02-14', 'Jakarta', 8, 1, 13.1, 'img_Jakarta.png' ),
(NULL   , 5300, '2018-03-23', 'Bussang', 7, 6, 20.6, 'img_Bussang.png' ),
(NULL   , 2000, '2015-01-30', 'Kupio', 6, 2, 20.7, 'img_Kupio.png');

sujet 28

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

tableau des routes


Nom fonction Route Méthode description action (réponse HTTP)
show_accueil / GET page d’accueil retourne la vue layout.html
show_type_jeu /type-jeu/show GET affiche les types de jeux retourne la vue show_type_jeu.html
add_type_jeu /type-jeu/add GET affiche le formulaire pour ajouter un type de jeu retourne la vue add_type_jeu.html
valid_add_type_jeu /type-jeu/add POST validation (soumission) du formulaire pour ajouter un type de jeu redirection sur la route /type-jeu/show
delete_type_jeu /type-jeu/delete GET suppression d’un type de jeu redirection sur la route /type-jeu/show
edit_type_jeu /type-jeu/edit GET affiche le formulaire pour modifier un type de jeu retourne la vue edit_type_jeu.html
valid_edit_type_jeu /type-jeu/edit POST validation (soumission) du formulaire pour modifier un type de jeu redirection sur la route /type-jeu/show
show_jeu_plateau /jeu-plateau/show GET affiche les jeux retourne la vue show_jeu.html
add_jeu_plateau /jeu-plateau/add GET affiche le formulaire pour ajouter un jeu retourne la vue add_jeu.html
valid_add_jeu /jeu-plateau/add POST validation (soumission) du formulaire pour ajouter un jeu redirection sur la route /jeu-plateau/show
delete_jeu_plateau /jeu-plateau/delete GET suppression d’un jeu redirection sur la route /jeu/show
edit_jeu_plateau /jeu-plateau/edit GET affiche le formulaire pour modifier un jeu retourne la vue edit_jeu.html
valid_edit_jeu_plateau /jeu-plateau/edit POST validation (soumission) du formulaire pour modifier un jeu redirection sur la route /jeu/show
filtre_jeu_plateau /jeu-plateau/filtre GET affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_jeu_filtre_show.html



########################################################### Sujet  28

# ? jeuPlateau(id,nomJeu, marque, prix_jeu, nbMiniJoueurs, nbMaxiJoueurs, description, photo, typeJeu_id )  typeJeu(id,libelleTypeJeu)


typeJeu = [
 {'id':1, 'libelleTypeJeu':'jeu de stratégie'},
 {'id':2, 'libelleTypeJeu':'jeu de hasard'},
 {'id':3, 'libelleTypeJeu':'jeu de lettre'},
 {'id': 4, 'libelleTypeJeu': 'jeu de mémoire'},
 {'id': 5, 'libelleTypeJeu': 'jeu de déduction'},
 {'id': 6, 'libelleTypeJeu': 'jeu de réflexe'},
 {'id': 7, 'libelleTypeJeu': 'jeu de coopération'},
]

jeuPlateau = [
 {'id':1, 'nomJeu':'Monopoly', 'marque':'Hasbro', 'prix':29.99, 'joueursMin':3, 'joueursMax':6,
  'description':'Jeu de chance dont le but est de ruiner ses adversaires grâce à ses hôtels', 'image':'monopoly.png', 'dateCreation':'1904-01-01', 'typeJeu_id':2},
 {'id':2, 'nomJeu':'Uno', 'marque':'Mattel', 'prix':9.99, 'joueursMin':2, 'joueursMax':10,
  'description':'Jeu de rapidité qui consiste à se débarasser de toutes ses cartes en premier', 'image':'uno.png', 'dateCreation':'1971-02-02', 'typeJeu_id':6},
 {'id':3, 'nomJeu':'Loup-Garou', 'marque':'Thiercelieux', 'prix':12.57, 'joueursMin':6, 'joueursMax':24,
  'description':'Jeu de déduction qui oppose loup-garous et villageois, et dont le but est de survivre', 'image':'loupGarou.png', 'dateCreation':'1986-02-02', 'typeJeu_id':5},
 {'id':4, 'nomJeu':'Scrabble', 'marque':'Scrabble', 'prix':35.92, 'joueursMin':2, 'joueursMax':4,
  'description':'Jeu de lettre dans lequel on marque des points en formant des mots sur un plateau', 'image':'scrabble.png', 'dateCreation':'1955-02-02', 'typeJeu_id':3},
 {'id':5, 'nomJeu':'Risk', 'marque':'Hasbro', 'prix':59.99, 'joueursMin':2, 'joueursMax':6,
  'description':'Jeu de stratégie militaire consistant à conquérir des territoires', 'image':'risk.png', 'dateCreation':'1957-02-02', 'typeJeu_id':1},
 {'id':6, 'nomJeu':'Times Up', 'marque':'Asmodee', 'prix':23.49, 'joueursMin':4, 'joueursMax':12,
   'description':'Jeu en coopération qui oppose plusieurs équipes de 2 devants faire deviner des mimes pour gagner des points', 'image':'timesup.png', 'dateCreation':'1999-02-02', 'typeJeu_id':7},
 {'id':7, 'nomJeu':'Colon Catan', 'marque':'Kosmos', 'prix':45.99, 'joueursMin':3, 'joueursMax':4,
   'description':'Jeu de stratégie dont le but est de collecter et organiser des ressources pour coloniser l\'île', 'image':'colon.png', 'dateCreation':'1995-02-02', 'typeJeu_id':1},    # colon de catane
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

à vérifier !


-- sujet 28 : jeu_plateau / type_jeu     --


INSERT INTO type_jeu(id_type_jeu, libelle_type_jeu, image) VALUES
    (NULL, 'jeu de stratégie'),
    (NULL, 'jeu de hasard'),
    (NULL, 'jeu de lettre'),
    (NULL, 'jeu de mémoire'),
    (NULL, 'jeu de déduction'),
    (NULL, 'jeu de réflexe'),
    (NULL, 'jeu de coopération'),
    (NULL, 'jeu de chiffre'),
    (NULL, 'jeu de dés');

INSERT INTO jeu_plateau (id_jeu_plateau, nom_jeu,  marque, prix, joueurs_min, joueurs_max, description, image, date_creation, type_jeu_id) VALUES
    (NULL, 'Monopoly', 'Hasbro', 29.99, 3, 6, 'Jeu de chance dont le but est de ruiner ses adversaires grâce à ses hôtels', '2024-1-1' ,'monopoly.png', 2),
    (NULL, 'Uno', 'Mattel', 9.99, 2, 10, 'Jeu de rapidité qui consiste à se débarrasser de toutes ses cartes en premier', '2024-1-1' ,'uno.png', 6),
    (NULL, 'Loup-Garou', 'Thiercelieux', 12.57, 6, 24, 'Jeu de déduction qui oppose loup-garous et villageois, et dont le but est de survivre', '2024-1-1' ,'loupGarou.png', 5),
    (NULL, 'Scrabble', 'Scrabble', 35.92, 2, 4, 'Jeu de lettre dans lequel on marque des points en formant des mots sur un plateau', '2024-1-1' ,'scrabble.png', 3),
    (NULL, 'Risk', 'Hasbro', 59.99, 2, 6, 'Jeu de stratégie militaire consistant à conquérir des territoires', '2024-1-1' ,'risk.png', 1),
    (NULL, 'Times Up', 'Asmodee', 23.49, 4, 12, 'Jeu en coopération qui oppose plusieurs équipes de 2 devant faire deviner des mimes pour gagner des points', '2024-1-1' ,'timesup.png', 7),
    (NULL, 'Cluedo', 'Hasbro', 31.99, 3, 8, 'Jeu en coopération dont le but est de démasquer le coupable d\'un meurte', '2024-1-1' ,'cluedo.png', 7),
    (NULL, 'Yam', 'Schmidt', 24.99, 2, 6, 'Jeu dont le but est de faire le plus de points possible à partir de combinaisons de dés', '2024-1-1' ,'yam.png', 9),
    (NULL, 'Bonne Paye', 'Hasbro', 19.99, 2, 8, 'Jeu de plateau qui consiste à devenir le plus riche possible', '2024-1-1' ,'bp.png', 2),
    (NULL, 'Triominos', 'Goliath', 14.18, 2, 4, 'Jeu de chiffre dans lequel les joueurs doivent se débarrasser de leurs tuiles en associant les chiffres de celles-ci', '2024-1-1' ,'triomino.png', 8),
    (NULL, 'Aventuriers du Rail', 'Days of Wonder', 39.45, 2, 5, 'Jeu de stratégie dont le but est de rallier le plus de villes des états-unis possible avec des trains', '2024-1-1' ,'rail.png', 1),
    (NULL, 'Colon Catan', 'Kosmos', 45.99, 3, 4, 'Jeu de stratégie dont le but est de collecter et organiser des ressources pour coloniser l\'île', '2024-1-1' ,'colon.png', 1);

sujet 29

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

tableau des routes


Nom fonction Route Méthode description action (réponse HTTP)
show_accueil / GET page d’accueil retourne la vue layout.html
show_type_pneu /type-pneu/show GET affiche les types de pneus retourne la vue show_type_pneu.html
add_type_pneu /type-pneu/add GET affiche le formulaire pour ajouter un type de pneu retourne la vue add_type_pneu.html
valid_add_type_pneu /type-pneu/add POST validation (soumission) du formulaire pour ajouter un type de pneu redirection sur la route /type-pneu/show
delete_type_pneu /type-pneu/delete GET suppression d’un type de pneu redirection sur la route /type-pneu/show
edit_type_pneu /type-pneu/edit GET affiche le formulaire pour modifier un type de pneu retourne la vue edit_type_pneu.html
valid_edit_type_pneu /type-pneu/edit POST validation (soumission) du formulaire pour modifier un type de pneu redirection sur la route /type-pneu/show
show_pneu_velo /pneu-velo/show GET affiche les pneus retourne la vue show_pneu_velo.html
add_pneu_velo /pneu-velo/add GET affiche le formulaire pour ajouter un pneu retourne la vue add_pneu_velo.html
valid_add_pneu_velo /pneu-velo/add POST validation (soumission) du formulaire pour ajouter un pneu redirection sur la route /pneu-velo/show
delete_pneu_velo /pneu-velo/delete GET suppression d’un pneu redirection sur la route /pneu-velo/show
edit_pneu_velo /pneu-velo/edit GET affiche le formulaire pour modifier un pneu retourne la vue edit_pneu_velo.html
valid_edit_pneu_velo /pneu-velo/edit POST validation (soumission) du formulaire pour modifier un pneu redirection sur la route /pneu-velo/show
filtre_pneu_velo /pneu-velo/filtre GET affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_pneu_filtre_show.html



########################################################### Sujet  29


typePneuVelo = [
    {'id': 1, 'libelleType': 'Ville'},
    {'id': 2, 'libelleType': 'VTT'},
    {'id': 3, 'libelleType': 'Route'},
    {'id': 4, 'libelleType': 'Vélo électrique'},
    {'id': 5, 'libelleType': 'Enfant'}
]

pneuVelo = [
    {'id': 1, 'nomPneu': 'Pneu velo Confort Michelin', 'fabricant': 'Michelin', 'modelePneu':'Pneu Michelin blanc et noir', 'largeurPneu': 3, 'diametreJante': 65, 'dimension': '22 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 1, 'prixPneu': 22.00, 'image': 'pneu_michelin_blanc_noir.png'},
    {'id': 2,'nomPneu': 'Pneu VTT Crossmax', 'fabricant': 'Mavic', 'modelePneu': 'Crossmax Pro', 'largeurPneu': 2.4, 'diametreJante': 60, 'dimension': '29 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 2, 'prixPneu': 55.00, 'image': 'pneu_VTT_crossmax.png'},
    {'id': 3, 'nomPneu': 'Pneu ville CityTouring', 'fabricant': 'Continental', 'modelePneu': 'TourRide', 'largeurPneu': 3, 'diametreJante': 62, 'dimension': '28 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 1, 'prixPneu': 35.58, 'image': 'pneu_ville_touring.png'},
    {'id': 4, 'nomPneu': 'Pneu Route Ultrasport', 'fabricant': 'Schwalbe', 'modelePneu': 'Ultrasport', 'largeurPneu': 2, 'diametreJante': 70, 'dimension': '28 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 3, 'prixPneu': 28.00, 'image': 'pneu_ultrasport.png'},
    {'id': 5, 'nomPneu': 'Pneu Cars', 'fabricant': 'Michelin', 'modelePneu': 'Mich&Flash', 'largeurPneu': 1.3, 'diametreJante': 15, 'dimension': '16 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 5, 'prixPneu': 15.00, 'image': 'pneu_cars.png'},
    {'id': 6, 'nomPneu': 'Pneu Big Ben', 'fabricant': 'Schwalbe', 'modelePneu': 'Ballon', 'largeurPneu': 2.3, 'diametreJante': 30, 'dimension': '26 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 4, 'prixPneu': 20.00, 'image': 'pneu_big_ben.png'},
    {'id': 7, 'nomPneu': 'Pneu Energy', 'fabricant': 'Michelin', 'modelePneu': 'ElectrikRide', 'largeurPneu': 3, 'diametreJante': 35, 'dimension': '29 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 4, 'prixPneu': 22.64, 'image': 'pneu_energy.png'},
    {'id': 8, 'nomPneu': 'Pneu Touring Marathon', 'fabricant': 'Schwalbe', 'modelePneu': 'Touring', 'largeurPneu': 5, 'diametreJante': 55, 'dimension': '26 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 3, 'prixPneu': 60.00, 'image': 'pneu_touring_marathon.png'},
    {'id': 9, 'nomPneu': 'Pneu VTT Ikon', 'fabricant': 'Maxxis', 'modelePneu': 'EXO', 'largeurPneu': 7, 'diametreJante': 63, 'dimension': '29 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 2, 'prixPneu': 33.99, 'image': 'pneu_VTT_Ikon.png'},
    {'id': 10, 'nomPneu': 'Pneu Route Corsa', 'fabricant': 'Veloflex', 'modelePneu': 'Corsa Evo', 'largeurPneu': 2, 'diametreJante': 75, 'dimension': '25 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 3, 'prixPneu': 49.26, 'image': 'pneu_route_corsa.png'},
    {'id': 11, 'nomPneu': 'Pneu velo Zig Zag', 'fabricant': 'Oxford', 'modelePneu': 'Noir traditionnel', 'largeurPneu': 3.2, 'diametreJante': 58, 'dimension': '26 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 1, 'prixPneu': 10.00, 'image': 'pneu_velo_zig_zag.png'},
    {'id': 12, 'nomPneu': 'Pneu Kid Road', 'fabricant': 'Bike Original', 'modelePneu': 'RoadTown', 'largeurPneu': 1.5, 'diametreJante': 18, 'dimension': '18 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 5, 'prixPneu': 12.00, 'image': 'pneu_kid_road.png'},
    {'id': 13, 'nomPneu': 'Pneu VTT Syerra', 'fabricant': 'Vittoria', 'modelePneu': 'TLR G2', 'largeurPneu': 3, 'diametreJante': 46, 'dimension': '27 pouces', 'dateCreation':'2023-02-02' , 'typePneu_id': 2, 'prixPneu': 44.99, 'image': 'pneu_VTT_syerra.png'}
]


archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

à vérifier !


-- sujet 29 : pneu_velo / type_pneu_velo     --

INSERT INTO type_pneu_velo (id_type_pneu, libelle_type)
VALUES
    (NULL, 'Ville'),
    (NULL, 'VTT'),
    (NULL, 'Route'),
    (NULL, 'Vélo électrique'),
    (NULL, 'Fauteuil roulant'),
    (NULL, 'Enfant');

INSERT INTO pneu_velo (id_pneu_velo, nom_pneu, fabricant, modele_pneu, largeur_pneu, diametre_jante, dimension, type_pneu_id, prix_pneu, image)
VALUES
    (NULL, 'Pneu velo Confort Michelin', 'Michelin', 'Pneu Michelin blanc et noir', 3, 65, '22 pouces', 1, 22.00, 'pneu_michelin_blanc_noir.png'),
    (NULL, 'Pneu VTT Crossmax','Mavic','Crossmax Pro', 2.4, 60, '29 pouces', 2, 55.00, 'pneu_VTT_crossmax.png'),
    (NULL, 'Pneu ville CityTouring','Continental','TourRide', 3, 62, '28 pouces', 1, 35.58, 'pneu_ville_touring.png'),
    (NULL, 'Pneu Route Ultrasport','Schwalbe','Ultrasport', 2, 70, '28 pouces', 3, 28.00, 'pneu_ultrasport.png'),
    (NULL, 'Pneu fauteuil roulant Marathon','Schwalbe','Rightrun', 2, 35, '24 pouces', 5, 9.15, 'pneu_fauteuil_roulant_marathon.png'),
    (NULL, 'Pneu Cars','Michelin','Mich&Flash', 1.3, 15, '16 pouces', 6, 15.00, 'pneu_cars.png'),
    (NULL, 'Pneu Big Ben','Schwalbe','Ballon', 2.3, 30, '26 pouces', 4, 20.00, 'pneu_big_ben.png'),
    (NULL, 'Pneu Touring Marathon','Schwalbe','Touring', 5, 55, '26 pouces', 3, 60.00, 'pneu_touring_marathon.png'),
    (NULL, 'Pneu VTT Ikon','Maxxis','EXO', 7, 63, '29 pouces', 2, 33.99, 'pneu_VTT_Ikon.png'),
    (NULL, 'Pneu Route Corsa','Veloflex','Corsa Evo', 2, 75, '25 pouces', 3, 49.26, 'pneu_route_corsa.png'),
    (NULL, 'Pneu velo Zig Zag','Oxford','Noir traditionnel', 3.2, 58, '26 pouces', 1, 10.00, 'pneu_velo_zig_zag.png'),
    (NULL, 'Pneu Kid Road','Bike Original','RoadTown', 1.5, 18, '18 pouces', 6, 12.00, 'pneu_kid_road.png'),
    (NULL, 'Pneu VTT Syerra','Vittoria','TLR G2', 3, 46, '27 pouces', 2, 44.99, 'pneu_VTT_syerra.png'),
    (NULL, 'Pneu Energy','Michelin','ElectrikRide', 3, 35, '29 pouces', 4, 22.64, 'pneu_energy.png'),
    (NULL, 'Pneu Contact','Continental','Urban', 4, 40, '25 pouces', 5, 25.47, 'pneu_contact.png');

sujet 30

livrable 1 (vacances Toussaint)

éléments à respecter dans le fichier app.py

tableau des routes


Nom fonction Route Méthode description action (réponse HTTP)
show_accueil / GET page d’accueil retourne la vue layout.html
show_type_salle /type-salle/show GET affiche les types de salles retourne la vue show_type_salle.html
add_type_salle /type-salle/add GET affiche le formulaire pour ajouter un type de salle retourne la vue add_type_salle.html
valid_add_type_salle /type-salle/add POST validation (soumission) du formulaire pour ajouter un type de salle redirection sur la route /type-salle/show
delete_type_salle /type-salle/delete GET suppression d’un type de salle redirection sur la route /type-salle/show
edit_type_salle /type-salle/edit GET affiche le formulaire pour modifier un type de salle retourne la vue edit_type_salle.html
valid_edit_type_salle /type-salle/edit POST validation (soumission) du formulaire pour modifier un type de salle redirection sur la route /type-salle/show
show_salle_cours /salle-cours/show GET affiche les salles retourne la vue show_salle_cours.html
add_salle_cours /salle-cours/add GET affiche le formulaire pour ajouter une salle retourne la vue add_salle_cours.html
valid_add_salle_cours /salle-cours/add POST validation (soumission) du formulaire pour ajouter une salle redirection sur la route /salle-cours/show
delete_salle_cours /salle-cours/delete GET suppression d’une salle redirection sur la route /salle-cours/show
edit_salle_cours /salle-cours/edit GET affiche le formulaire pour modifier une salle retourne la vue edit_salle_cours.html
valid_edit_salle_cours /salle-cours/edit POST validation (soumission) du formulaire pour modifier une salle redirection sur la route /salle-cours/show
filtre_salle_cours /salle-cours/filtre GET affichage du formulaire du filtre et des éléments d’une des tables python sous forme de ‘cards’ retourne la vue front_salle_filtre_show.html



########################################################### Sujet  30


typeSalle = [
    {'id': 1, 'nomTypeSalle': 'td', 'typeCours': 'TD'},
    {'id': 2, 'nomTypeSalle': 'amphi', 'typeCours': 'CM'},
    {'id': 3, 'nomTypeSalle': 'tp_machine', 'typeCours': 'TP'},
    {'id': 4, 'nomTypeSalle': 'tp_reseau', 'typeCours': 'TP'},
    {'id': 5, 'nomTypeSalle': 'salle_des_profs', 'typeCours': None}
]


salleCours = [
    {'id': 1, 'nomSalle': 'Salle 101', 'etage': 0, 'nbMaxEtudiants': 30, 'surface': 100, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'101.jpg'},
    {'id': 2, 'nomSalle': 'Salle 102', 'etage': 0, 'nbMaxEtudiants': 25, 'surface': 102, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'102.jpg'},
    {'id': 3, 'nomSalle': 'Salle 103', 'etage': 1, 'nbMaxEtudiants': 28, 'surface': 104, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 4, 'photo':'103.jpg'},
    {'id': 4, 'nomSalle': 'Salle 104', 'etage': 1, 'nbMaxEtudiants': 24, 'surface': 105, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'104.jpg'},
    {'id': 5, 'nomSalle': 'Salle 105', 'etage': 1, 'nbMaxEtudiants': 28, 'surface': 98, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'105.jpg'},
    {'id': 6, 'nomSalle': 'Salle 106', 'etage': 1, 'nbMaxEtudiants': 23, 'surface': 97, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'106.jpg'},
    {'id': 7, 'nomSalle': 'Salle 107', 'etage': 1, 'nbMaxEtudiants': 24, 'surface': 96, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 3, 'photo':'107.jpg'},
    {'id': 8, 'nomSalle': 'Salle 108', 'etage': 1, 'nbMaxEtudiants': 31, 'surface': 85, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 5, 'photo':'108.jpg'},
    {'id': 9, 'nomSalle': 'Salle 109', 'etage': 1, 'nbMaxEtudiants': 34, 'surface': 88, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 5, 'photo':'109.jpg'},
    {'id': 10, 'nomSalle': 'Salle 200', 'etage': 1, 'nbMaxEtudiants': 10, 'surface': 91, 'nbPrisesCourant': 15,
     'nbMachines': 25, 'batiment': 'E', 'type_salle_id': 3, 'photo':'200.jpg'},
    {'id': 11, 'nomSalle': 'Salle 201', 'etage': 1, 'nbMaxEtudiants': 10, 'surface': 94, 'nbPrisesCourant': 15,
     'nbMachines': 25, 'batiment': 'E', 'type_salle_id': 3, 'photo':'201.jpg'},
    {'id': 12, 'nomSalle': 'Salle 202', 'etage': 2, 'nbMaxEtudiants': 14, 'surface': 95, 'nbPrisesCourant': 15,
     'nbMachines': 25, 'batiment': 'E', 'type_salle_id': 3, 'photo':'202.jpg'},
    {'id': 13, 'nomSalle': 'Salle 203', 'etage': 2, 'nbMaxEtudiants': 30, 'surface': 96, 'nbPrisesCourant': 25,
     'nbMachines': 35, 'batiment': 'E', 'type_salle_id': 1, 'photo':'203.jpg'},
    {'id': 14, 'nomSalle': 'Salle 204', 'etage': 2, 'nbMaxEtudiants': 28, 'surface': 103, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'204.jpg'},
    {'id': 15, 'nomSalle': 'Salle 205', 'etage': 2, 'nbMaxEtudiants': 27, 'surface': 108, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'205.jpg'},
    {'id': 16, 'nomSalle': 'Salle 206', 'etage': 2, 'nbMaxEtudiants': 36, 'surface': 107, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'206.jpg'},
    {'id': 17, 'nomSalle': 'Salle 207', 'etage': 2, 'nbMaxEtudiants': 36, 'surface': 100, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'207.jpg'},
    {'id': 18, 'nomSalle': 'Salle 208', 'etage': 2, 'nbMaxEtudiants': 28, 'surface': 100, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'208.jpg'},
    {'id': 19, 'nomSalle': 'Salle 209', 'etage': 2, 'nbMaxEtudiants': 27, 'surface': 100, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'E', 'type_salle_id': 1, 'photo':'209.jpg'},
    {'id': 20, 'nomSalle': 'Amphi 1', 'etage': 0, 'nbMaxEtudiants': 100, 'surface': 500, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'F', 'type_salle_id': 2, 'photo':'amphi1.jpg'},
    {'id': 21, 'nomSalle': 'Amphi 3', 'etage': 0, 'nbMaxEtudiants': 100, 'surface': 500, 'nbPrisesCourant': 10,
     'nbMachines': 15, 'batiment': 'D', 'type_salle_id': 2, 'photo':'amphi3.jpg'}
]



archive des fichiers d’images de ce sujet


livrable 2 (vacances Noel)

à vérifier !


INSERT INTO type_salle(id_type_salle, nom_type_salle, type_cours) VALUES
VALUES (NULL, 'Sans machine', 'TD'),
       (NULL, 'Amphi', 'CM'),
       (NULL, 'TP_machine', 'TP'),
       (NULL, 'TP_reseau', 'TP'),
       (NULL, 'Salle des profs', NULL);



INSERT INTO salle_cours (id_salle, nom_salle,  etage, nb_max_etudiants, surface , nb_prises_courant, nb_machines, batiment, type_salle_id, photo  ) VALUES
VALUES (NULL, 'Salle 007', 0, 30, 100, 25, 35, 'E', 3, '007.jpg'),
       (NULL, 'Salle 009', 0, 25, 102, 25, 35, 'E', 3, '009.jpg'),
       (NULL, 'Salle 101', 1, 30, 100, 25, 35, 'E', 3, '101.jpg'),
       (NULL, 'Salle 102', 1, 25, 102, 25, 35, 'E', 3, '102.jpg'),
       (NULL, 'Salle 103', 1, 28, 104, 25, 35, 'E', 4, '103.jpg'),
       (NULL, 'Salle 104', 1, 24, 105, 25, 35, 'E', 3, '104.jpg'),
       (NULL, 'Salle 105', 1, 28, 98, 25, 35, 'E', 3, '105.jpg'),
       (NULL, 'Salle 106', 1, 23, 97, 25, 35, 'E', 3, '106.jpg'),
       (NULL, 'Salle 107', 1, 24, 96, 25, 35, 'E', 3, '107.jpg'),
       (NULL, 'Salle 108', 1, 24, 96, 25, 35, 'E', 5, '108.jpg'),
       (NULL, 'Salle 202', 2, 28, 110, 30, 35, 'E', 3, '202.jpg'),
       (NULL, 'Salle 203', 2, 27, 96, 10, 4, 'E', 1, ''),
       (NULL, 'Salle 204', 2, 29, 98, 10, 4, 'E', 1, '204.jpg'),
       (NULL, 'Salle 205', 2, 27, 93, 10, 4, 'E', 1, '205.jpg'),
       (NULL, 'Salle 206', 2, 28, 102, 10, 4, 'E', 1, '206.jpg'),
       (NULL, 'Salle 207', 2, 30, 104, 10, 4, 'E', 1, '207.jpg'),
       (NULL, 'Salle 208', 2, 29, 107, 10, 4, 'E', 1, ''),
       (NULL, 'Salle 209', 2, 27, 95, 10, 4, 'E', 1, '209.jpg'),
       (NULL, 'Amphi 1', 0, 120, 500, 10, 15, 'F', 2, 'amphi1.jpg'),
       (NULL, 'Amphi 3', 0, 130, 600, 10, 15, 'D', 2, 'amphi3.jpg');