Jour 2 · Sommaire

Créer une petite application de notes

Nous allons créer une application de prise de notes : ses données seront enregistrées dans PostgreSQL, puis affichées et modifiées dans l'interface Odoo.

Le fil rouge de la journée

Nous enrichissons le module training_hello créé au jour 1. L'application comprend des notes training.note et des catégories training.note.category. Une note choisit éventuellement une catégorie. Toute évolution de structure passe par les modèles Python et la mise à niveau du module ; PostgreSQL est observé avec des SELECT uniquement.

Préambule

Préparer pgAdmin 4 (facultatif, Ubuntu)

Si vous le souhaitez, installez l'outil, connectez-le à votre PostgreSQL local et apprenez à retrouver les tables de la base training. Ce n'est pas un prérequis pour créer le modèle.

Au programme

Section 1

Créer les notes

Définir le premier modèle, l'importer correctement et créer trois notes de départ.

  1. Créer le modèle — relier la classe Python au module.
  2. Ajouter des données de départ — créer trois notes en XML et les déclarer.
Section 2

Organiser les notes

Créer des catégories simples, ajouter une clé étrangère aux notes et observer le résultat sans modifier la base à la main.

  1. Créer les catégories — ajouter le modèle et le field category_id.
  2. Observer la relation — créer les catégories de départ et lire les tables PostgreSQL.
Section 3

Créer les écrans des notes

Partir d'une maquette visuelle, puis créer les listes, fiches et menus Odoo pour les notes et leurs catégories.

  1. 1. Le prototype statique — dessiner la liste et la fiche, sans sauvegarde.
  2. 2. Les vues Odoo — créer les listes, formulaires, actions et menus.
  3. 3. Manipuler et vérifier — créer, relire, modifier puis supprimer une note d'exercice.
Section 4

Afficher les notes avec QWeb

Présenter les mêmes notes à une URL avec un template rendu par le serveur, puis comprendre comment un form passe par un contrôleur pour créer une note.

  1. Template et contrôleur — lire les notes, puis créer une note avec un POST protégé.
Section 5

Afficher les notes avec Owl

Construire une client action qui lit les notes avec le service ORM et se rafraîchit après la création d'une note.

  1. Composant Owl — lire et créer les notes depuis le navigateur.

À retenir

Un modèle Python définit les données et leurs relations. Les fichiers XML définissent les écrans Odoo. Le formulaire Odoo enregistre les données avec l'ORM ; les requêtes SELECT permettent ensuite de les retrouver dans PostgreSQL.

Résultat attendu

Vous pourrez administrer des catégories, puis créer, relire, modifier et supprimer une note temporaire depuis l'interface Odoo. Vous saurez expliquer qu'une note conserve la référence de sa catégorie dans category_id.